:root {
    --sg-primary: #0f766e;
    --sg-text: #172033;
    --sg-muted: #667085;
    --sg-border: #e7edf5;
    --sg-soft: #f7f9fc;
    --sg-page-bg: #f7f9fc;
    --sg-surface: #fff;
    --sg-surface-2: #f8fafc;
    --bs-primary: #f97316;
    --bs-primary-rgb: 249, 115, 22;
    --bs-link-color: #0f766e;
    --bs-link-hover-color: #f97316;
    --bs-focus-ring-color: rgba(249, 115, 22, .24);
}

.sg-cart-options-accordion {
    margin-top: 2px;
}

.sg-cart-options-toggle {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    border-color: #e5e2e1;
    color: #30585c;
    font-size: .60rem;
    font-weight: 700;
    line-height: 1;
    padding: 2px 4px;
}

.sg-cart-options-toggle:hover,
.sg-cart-options-toggle:focus {
    border-color: #d8d2cf;
    color: #17464a;
    background-color: #f8f7f6;
    box-shadow: 0 0 0 .15rem rgba(48, 88, 92, .10);
}

.sg-cart-options-chevron {
    font-size: .62rem;
    transition: transform .18s ease;
}

.sg-cart-options-toggle:not(.collapsed) .sg-cart-options-chevron {
    transform: rotate(180deg);
}

.sg-cart-options-accordion .sg-cart-options {
    margin-top: 2px;
    border: 1px solid #e5e2e1;
    border-radius: .35rem;
    background: #fff;
    padding: 2px;
}

.badge {
    --bs-badge-padding-x: 0.50em;
    --bs-badge-padding-y: 0.35em;
    --bs-badge-font-size: 0.65em;
    --bs-badge-font-weight: 600;
}

/* Final mobile header rule: Yak?ndakiler belongs inside the homepage body, not the header. */
@media (max-width: 767.98px) {
    body:has(.sg-home) .sg-header .sg-nav-nearby,
    body:has(.sg-bs-home) .sg-header .sg-nav-nearby,
    body:has(.sg-home) .sg-header a[href="/yakinimdakiler"],
    body:has(.sg-bs-home) .sg-header a[href="/yakinimdakiler"] {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        min-width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
    }
}

/* Brand chrome color: header and footerbar use the same fixed gradient. */
.sg-header,
.sg-header .navbar,
.sg-header .navbar > .container,
body.sg-theme-acik .sg-header,
body.sg-theme-acik:has(.sg-home) .sg-header,
body.sg-theme-acik:has(.sg-nearby-page) .sg-header,
body:has(.sg-bs-home) .sg-header,
body:has(.sg-bs-home) .sg-header .navbar,
body:has(.sg-bs-home) .sg-header .navbar .container,
body:has(.sg-nearby-page) .sg-header,
body:has(.sg-nearby-page) .sg-header .navbar,
body:has(.sg-nearby-page) .sg-header .navbar .container,
body:has(.sg-customer-footerbar) .sg-header,
body:has(.sg-customer-footerbar) .sg-header .navbar,
body:has(.sg-customer-footerbar) .sg-header .navbar .container,
.sg-account-mobile-nav.sg-customer-footerbar {
    background: linear-gradient(135deg, #30585c, #095215) !important;
    border-color: rgba(232, 245, 233, .24) !important;
}

.sg-header,
.sg-header .navbar,
body:has(.sg-customer-footerbar) .sg-header,
.sg-account-mobile-nav.sg-customer-footerbar {
    box-shadow: 0 .35rem 1.15rem rgba(9, 82, 21, .18) !important;
}

.sg-account-mobile-nav.sg-customer-footerbar {
    box-shadow: 0 -.55rem 1.25rem rgba(9, 82, 21, .26) !important;
}

/* Absolute final sponsored ribbon: compact top-right badge, no image blocking. */
.sg-sponsored-badge.position-absolute {
    align-items: center !important;
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid rgba(251, 146, 60, .5) !important;
    border-radius: 999px !important;
    box-shadow: 0 .16rem .42rem rgba(15, 23, 42, .13) !important;
    color: #7c2d12 !important;
    display: inline-flex !important;
    font-size: .58rem !important;
    gap: .18rem !important;
    height: 18px !important;
    left: auto !important;
    line-height: 1 !important;
    margin: 0 !important;
    max-height: 18px !important;
    min-height: 0 !important;
    padding: .12rem .3rem !important;
    right: .28rem !important;
    top: .28rem !important;
    transform: none !important;
    white-space: nowrap !important;
    width: auto !important;
}

.sg-sponsored-badge.position-absolute i {
    color: #f59e0b !important;
    font-size: .68rem !important;
    line-height: 1 !important;
}

.sg-sponsored-badge.position-absolute span {
    color: #7c2d12 !important;
    display: inline !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.sg-home-store-strip {
    display: flex;
    gap: .5rem;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: .15rem;
    scrollbar-width: none;
}

.sg-home-store-strip::-webkit-scrollbar {
    display: none;
}

.sg-home-store-strip-item {
    flex: 0 0 calc(50% - .25rem);
    min-width: 0;
}

@media (min-width: 768px) {
    .sg-home-store-strip-item {
        flex-basis: 220px;
    }
}

.sg-home-store-strip-item > .card {
    height: 100%;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.sg-home-store-strip-item > .card:hover {
    border-color: #f97316 !important;
    box-shadow: 0 .55rem 1.25rem rgba(249, 115, 22, .16) !important;
    transform: translateY(-1px);
}

.sg-home-sponsored-viewport {
    overflow: hidden;
    padding: 1px 2.25rem;
    position: relative;
    width: 100%;
}

.sg-home-sponsored-track {
    align-items: stretch;
    display: flex;
    gap: .5rem;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    width: 100%;
}

.sg-home-sponsored-track.is-static {
    width: 100%;
}

.sg-home-sponsored-track::-webkit-scrollbar {
    display: none;
}

.sg-home-sponsored-manual-strip {
    display: none !important;
}

.sg-home-sponsored-arrow {
    align-items: center;
    border-color: #fed7aa !important;
    border-radius: 999px !important;
    box-shadow: 0 .45rem 1rem rgba(15, 23, 42, .14) !important;
    color: #9a3412 !important;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    padding: 0 !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    z-index: 4;
}

.sg-home-sponsored-arrow:hover,
.sg-home-sponsored-arrow:focus-visible {
    background: #fff7ed !important;
    border-color: #f97316 !important;
    color: #7c2d12 !important;
}

.sg-home-sponsored-arrow-prev {
    left: -17px;
}

.sg-home-sponsored-arrow-next {
    right: -17px;
}

.sg-home-sponsored-item {
    flex: 0 0 calc(50vw - 1.25rem);
    max-width: 240px;
    min-width: 168px;
    scroll-snap-align: start;
}

.sg-home-sponsored-item > .card {
    border-color: #eadfd8 !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    isolation: isolate;
    overflow: visible;
    position: relative;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.sg-home-sponsored-item > .card::before {
    background: linear-gradient(90deg, transparent, #fff7ed 18%, #fb923c 48%, #f97316 74%, transparent);
    border-radius: 999px;
    box-shadow: 0 0 8px rgba(249, 115, 22, .75), 0 0 16px rgba(249, 115, 22, .42);
    content: "";
    height: 3px;
    left: 8px;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: -3px;
    transition: opacity .2s ease;
    width: 42px;
    z-index: 3;
}

.sg-home-sponsored-item > .card::after {
    border: 1px solid rgba(249, 115, 22, .9);
    border-radius: inherit;
    box-shadow: 0 0 12px rgba(249, 115, 22, .28);
    content: "";
    inset: -1px;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transition: opacity .2s ease;
    z-index: 2;
}

.sg-home-sponsored-item > .card:hover,
.sg-home-sponsored-item > .card:focus-within {
    border-color: #f97316 !important;
    box-shadow: 0 12px 26px rgba(249, 115, 22, .18), 0 0 0 1px rgba(249, 115, 22, .18) !important;
    transform: translateY(-1px);
}

.sg-home-sponsored-item > .card:hover::before,
.sg-home-sponsored-item > .card:focus-within::before {
    animation: sg-sponsored-led-runner 1.9s linear infinite;
    opacity: 1;
}

.sg-home-sponsored-item > .card:hover::after,
.sg-home-sponsored-item > .card:focus-within::after {
    opacity: 1;
}

.sg-home-sponsored-item .ratio {
    flex: 0 0 auto !important;
}

.sg-home-sponsored-item .sg-store-card-body {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    min-height: 128px !important;
    padding-top: 3px !important;
}

.sg-home-sponsored-item .sg-store-info-box {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

.sg-home-sponsored-item .sg-store-info-box h3 {
    min-height: 1.2em !important;
}

.sg-home-sponsored-item .sg-store-info-box p {
    display: -webkit-box !important;
    min-height: 2.45em !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.sg-home-sponsored-item .sg-store-meta-row {
    min-height: 24px !important;
}

.sg-home-sponsored-item .card-footer {
    margin-top: auto !important;
}

@keyframes sg-sponsored-led-runner {
    0% {
        height: 3px;
        left: 8px;
        top: -3px;
        width: 42px;
    }
    24% {
        height: 3px;
        left: calc(100% - 50px);
        top: -3px;
        width: 42px;
    }
    25% {
        height: 42px;
        left: calc(100% - 1px);
        top: 8px;
        width: 3px;
    }
    49% {
        height: 42px;
        left: calc(100% - 1px);
        top: calc(100% - 50px);
        width: 3px;
    }
    50% {
        height: 3px;
        left: calc(100% - 50px);
        top: calc(100% - 1px);
        width: 42px;
    }
    74% {
        height: 3px;
        left: 8px;
        top: calc(100% - 1px);
        width: 42px;
    }
    75% {
        height: 42px;
        left: -3px;
        top: calc(100% - 50px);
        width: 3px;
    }
    99% {
        height: 42px;
        left: -3px;
        top: 8px;
        width: 3px;
    }
    100% {
        height: 3px;
        left: 8px;
        top: -3px;
        width: 42px;
    }
}

@media (min-width: 768px) {
    .sg-home-sponsored-item {
        flex-basis: 220px;
        min-width: 220px;
    }
}

@media (min-width: 992px) {
    .sg-home-sponsored-item {
        flex: 0 0 calc((100% - 1.5rem) / 4);
        max-width: none;
        min-width: 0;
    }

    .sg-home-sponsored-item .ratio {
        --bs-aspect-ratio: 58%;
    }

    .sg-home-sponsored-item .sg-store-card-body {
        gap: .28rem !important;
        min-height: 98px !important;
        padding: .35rem .45rem .42rem !important;
    }

    .sg-home-sponsored-item .sg-store-info-box {
        gap: .25rem !important;
    }

    .sg-home-sponsored-item .sg-store-info-box h3 {
        font-size: .78rem !important;
        line-height: 1.12 !important;
        margin-bottom: .08rem !important;
        min-height: 1.05em !important;
    }

    .sg-home-sponsored-item .sg-store-info-box p {
        font-size: .66rem !important;
        line-height: 1.18 !important;
        min-height: 2.35em !important;
    }

    .sg-home-sponsored-item .sg-store-meta-row {
        gap: .16rem !important;
        min-height: 20px !important;
    }

    .sg-home-sponsored-item .badge {
        --bs-badge-font-size: .58em;
        --bs-badge-font-weight: 650;
        --bs-badge-padding-x: .38em;
        --bs-badge-padding-y: .24em;
    }

    .sg-home-sponsored-item .card-footer {
        padding: 0 .45rem .45rem !important;
    }

    .sg-home-sponsored-item .card-footer .btn {
        font-size: .64rem !important;
        min-height: 25px !important;
        padding: .24rem .5rem !important;
    }
}

@media (max-width: 767.98px) {
    .sg-home-sponsored-viewport {
        padding: 1px;
    }

    .sg-home-sponsored-track {
        gap: .35rem;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
    }

    .sg-home-sponsored-track::-webkit-scrollbar {
        display: none;
        width: 0;
        height: 0;
    }

    .sg-home-sponsored-arrow {
        display: none !important;
    }

    .sg-home-sponsored-item {
        flex: 0 0 calc((100% - .35rem) / 2);
        max-width: none;
        min-width: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sg-home-sponsored-viewport {
        display: none !important;
    }

    .sg-home-sponsored-manual-strip {
        display: flex !important;
    }
}

/* Final sponsored badge position: small ribbon at the image top-right. */
.sg-sponsored-badge.position-absolute {
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid rgba(251, 146, 60, .55) !important;
    border-radius: 999px !important;
    box-shadow: 0 .18rem .55rem rgba(15, 23, 42, .14) !important;
    color: #7c2d12 !important;
    font-size: .64rem !important;
    left: auto !important;
    line-height: 1 !important;
    padding: .22rem .38rem !important;
    right: .35rem !important;
    top: .35rem !important;
    transform: none !important;
    width: auto !important;
}

.sg-sponsored-badge.position-absolute i {
    color: #f59e0b !important;
    font-size: .78rem !important;
}

.sg-sponsored-badge.position-absolute span {
    color: #7c2d12 !important;
    font-weight: 700 !important;
}

.sg-nearby-find-btn {
    --bs-btn-color: #fff;
    --bs-btn-bg: #14532d;
    --bs-btn-border-color: #14532d;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #166534;
    --bs-btn-hover-border-color: #166534;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0f3f25;
    --bs-btn-active-border-color: #0f3f25;
}

/* Final search focus discipline for homepage and nearby page. */
:is(.sg-bs-home, .sg-nearby-page) form[data-smart-search] .input-group:focus-within {
    border-color: #b7c7bd !important;
    box-shadow: 0 0 0 .14rem rgba(20, 83, 45, .12) !important;
}

:is(.sg-bs-home, .sg-nearby-page) form[data-smart-search] .input-group:focus-within :is(.form-control, .input-group-text, .btn) {
    border-color: #b7c7bd !important;
}

:is(.sg-bs-home, .sg-nearby-page) form[data-smart-search] :is(.form-control, .btn, .input-group-text):focus,
:is(.sg-bs-home, .sg-nearby-page) form[data-smart-search] :is(.form-control, .btn):focus-visible {
    box-shadow: none !important;
    outline: 0 !important;
}

.sg-home-popular-stores-grid > [class*="col"] > .card,
.sg-home-all-stores-list > [class*="col"] > .card,
.sg-nearby-page .row > [class*="col"] > .card {
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.sg-home-popular-stores-grid > [class*="col"] > .card:hover,
.sg-home-all-stores-list > [class*="col"] > .card:hover,
.sg-nearby-page .row > [class*="col"] > .card:hover {
    border-color: #f97316 !important;
    box-shadow: 0 .55rem 1.25rem rgba(249, 115, 22, .16) !important;
    transform: translateY(-1px);
}

.sg-courier-time-badge {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    color: #111827 !important;
    box-shadow: 0 .25rem .65rem rgba(15, 23, 42, .08);
}

.sg-store-meta-row {
    gap: .16rem;
    min-width: 0;
    overflow: hidden;
}

.sg-store-info-box {
    border: 0 solid;
    border-radius: .20rem;
    display: flex;
    flex-direction: column;
    gap: .35rem;
    padding: .1rem;
}

.sg-store-card-body {
    min-height: 10px;
    padding-bottom: 5px !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
}

.sg-store-meta-row .badge {
    --bs-bg-opacity: 1;
    align-items: center;
    background-color: #ecebeb !important;
    display: inline-flex;
    flex: 0 1 auto;
    font-size: .66rem;
    gap: .12rem;
    line-height: 1;
    max-width: 100%;
    min-width: 0;
    padding: .20rem .20rem;
    white-space: nowrap;
}

.sg-store-meta-row :is(.sg-courier-time-badge, .sg-special-courier-badge) {
    min-height: 1.45rem;
    padding-bottom: .18rem !important;
    padding-top: .18rem !important;
}

.sg-store-meta-row .sg-special-courier-badge {
    padding-left: .08rem !important;
}

.sg-store-meta-row .badge i {
    font-size: .68rem;
}

.sg-courier-time-badge i {
    color: #6b7280 !important;
    font-size: 1rem;
}

.sg-courier-time-icon {
    display: inline-block;
    height: 13px;
    object-fit: contain;
    width: 13px;
}

.sg-special-courier-badge {
    background: #fff !important;
    border: 1px solid #d1fae5 !important;
    color: #111827 !important;
    box-shadow: 0 .25rem .65rem rgba(15, 23, 42, .08);
}

.sg-special-courier-label {
    background: #dff7e8 !important;
    border-radius: .22rem;
    color: #14532d !important;
    display: inline-flex;
    flex-direction: column;
    font-family: var(--bs-font-sans-serif);
    font-size: .43rem;
    font-weight: 600;
    gap: .05rem;
    letter-spacing: .01em;
    line-height: .95;
    padding: .11rem .16rem .10rem;
    text-align: left;
    text-transform: uppercase;
}

.sg-special-courier-label span {
    color: #14532d !important;
    display: block;
}

.sg-sponsored-badge {
    background: rgba(255, 255, 255, .94) !important;
    border: 1px solid rgba(251, 146, 60, .5) !important;
    border-radius: 999px !important;
    left: auto !important;
    right: .35rem !important;
    top: .35rem !important;
    color: #fff !important;
    font-size: .66rem;
    line-height: 1;
    padding: .25rem .42rem !important;
    box-shadow: 0 .18rem .55rem rgba(15, 23, 42, .14);
}

.sg-sponsored-badge i {
    color: #f59e0b !important;
    font-size: .82rem;
}

.sg-sponsored-badge span {
    color: #7c2d12 !important;
    font-weight: 700;
}

/* Homepage brand becomes a compact home button. */
body:has(.sg-home) .sg-header .navbar-brand,
body:has(.sg-bs-home) .sg-header .navbar-brand {
    flex: 0 0 auto !important;
    gap: 0 !important;
    min-width: 0 !important;
}

body:has(.sg-home) .sg-header .sg-home-brand-icon,
body:has(.sg-bs-home) .sg-header .sg-home-brand-icon {
    background: #f0fdfa !important;
    border: 1px solid #99f6e4 !important;
    color: #0f766e !important;
    font-size: 1rem !important;
    align-items: center !important;
    display: inline-flex !important;
    justify-content: center !important;
    min-height: 38px !important;
    min-width: 38px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body:has(.sg-bs-home) .sg-header .sg-home-brand-icon i,
body:has(.sg-bs-home) .sg-header .sg-home-brand-icon i::before {
    color: #0f766e !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #0f766e !important;
}

/* Homepage/nearby header: match the dark orange customer footerbar, never black. */
body:has(.sg-bs-home) .sg-header,
body:has(.sg-bs-home) .sg-header .navbar,
body:has(.sg-bs-home) .sg-header .navbar .container,
body:has(.sg-nearby-page) .sg-header,
body:has(.sg-nearby-page) .sg-header .navbar,
body:has(.sg-nearby-page) .sg-header .navbar .container {
    background: linear-gradient(135deg, #c2410c, #9a3412) !important;
    border-color: rgba(255, 237, 213, .22) !important;
    box-shadow: 0 .35rem 1.15rem rgba(154, 52, 18, .18) !important;
}

body:has(.sg-bs-home) .sg-header .sg-home-brand-icon,
body:has(.sg-nearby-page) .sg-header .sg-home-brand-icon {
    background: rgba(255, 247, 237, .96) !important;
    border-color: rgba(255, 237, 213, .7) !important;
    color: #9a3412 !important;
}

body:has(.sg-bs-home) .sg-header .sg-home-brand-icon i,
body:has(.sg-bs-home) .sg-header .sg-home-brand-icon i::before,
body:has(.sg-nearby-page) .sg-header .sg-home-brand-icon i,
body:has(.sg-nearby-page) .sg-header .sg-home-brand-icon i::before {
    color: #9a3412 !important;
    -webkit-text-fill-color: #9a3412 !important;
}

body:has(.sg-bs-home) .sg-header :is(.btn, .btn i, .btn span, .btn strong),
body:has(.sg-nearby-page) .sg-header :is(.btn, .btn i, .btn span, .btn strong) {
    color: #fff7ed !important;
    -webkit-text-fill-color: #fff7ed !important;
}

body:has(.sg-bs-home) .sg-header :is(.btn-outline-secondary, .btn-outline-primary, .sg-icon-button, .btn-light),
body:has(.sg-nearby-page) .sg-header :is(.btn-outline-secondary, .btn-outline-primary, .sg-icon-button, .btn-light) {
    background: rgba(255, 247, 237, .13) !important;
    border-color: rgba(255, 237, 213, .34) !important;
}

body:has(.sg-bs-home) .sg-header :is(.btn-outline-secondary, .btn-outline-primary, .sg-icon-button, .btn-light):is(:hover, :focus-visible),
body:has(.sg-nearby-page) .sg-header :is(.btn-outline-secondary, .btn-outline-primary, .sg-icon-button, .btn-light):is(:hover, :focus-visible) {
    background: rgba(255, 247, 237, .24) !important;
    border-color: rgba(255, 237, 213, .52) !important;
}

/* Homepage and nearby search focus: avoid harsh default browser/Bootstrap blue ring. */
.sg-bs-home form[data-smart-search] .input-group:focus-within,
.sg-nearby-page form[data-smart-search] .input-group:focus-within {
    border-color: #fdba74 !important;
    box-shadow: 0 0 0 .16rem rgba(249, 115, 22, .14) !important;
}

.sg-bs-home form[data-smart-search] .input-group:focus-within :is(.form-control, .input-group-text, .btn),
.sg-nearby-page form[data-smart-search] .input-group:focus-within :is(.form-control, .input-group-text, .btn) {
    border-color: #fdba74 !important;
}

.sg-bs-home form[data-smart-search] .form-control:focus,
.sg-nearby-page form[data-smart-search] .form-control:focus {
    border-color: #fdba74 !important;
    box-shadow: none !important;
}

@font-face {
    font-display: block;
    font-family: "bootstrap-icons";
    src: url("/mobil/public/assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff2") format("woff2"),
        url("/mobil/public/assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff") format("woff");
}

.bi::before,
[class^="bi-"]::before,
[class*=" bi-"]::before {
    display: inline-block;
    font-family: "bootstrap-icons" !important;
    font-style: normal;
    font-weight: 400 !important;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Role login screens: admin, business and courier share a compact responsive layout. */
.sg-auth-topbar .navbar {
    min-height: 56px;
}

.sg-panel-login-page {
    overflow-x: hidden;
}

.sg-panel-login-page .sg-auth-section {
    padding: 14px 0 20px;
}

.sg-panel-login-page .sg-auth-section .container {
    max-width: 1120px;
    min-width: 0;
}

.sg-panel-login-shell {
    --sg-login-accent: var(--sg-primary);
    --sg-login-accent-soft: #f0fdfa;
    align-items: stretch;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
    margin: 0 auto;
    max-width: 1040px;
    width: auto;
}

.sg-panel-login-admin {
    --sg-login-accent: #111827;
    --sg-login-accent-soft: #f8fafc;
}

.sg-panel-login-business {
    --sg-login-accent: #f97316;
    --sg-login-accent-soft: #fff7ed;
    --sg-login-badge-bg: #f97316;
    --sg-login-badge-border: #ea580c;
}

.sg-panel-login-courier {
    --sg-login-accent: #2563eb;
    --sg-login-accent-soft: #eff6ff;
    --sg-login-badge-bg: #2563eb;
    --sg-login-badge-border: #1d4ed8;
}

.sg-panel-login-form-card {
    align-content: start;
    background: #fff;
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
    display: grid;
    gap: 8px;
    min-width: 0;
    overflow: hidden;
    padding: 20px;
}

.sg-panel-login-head {
    align-items: center;
    background: linear-gradient(135deg, #ecfeff 0%, #f0fdfa 55%, #ffffff 100%);
    border: 1px solid #99f6e4;
    border-radius: 9px;
    display: grid;
    gap: 7px 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    min-width: 0;
    padding: 10px;
}

.sg-panel-login-head .sg-auth-brand-mark {
    margin: 0;
    min-width: 0;
}

.sg-panel-login-head .sg-auth-brand-mark span {
    background: var(--sg-login-accent);
    border-radius: 9px;
    height: 36px;
    width: 36px;
}

.sg-panel-login-head .sg-auth-brand-mark span :is(i, svg),
.sg-panel-login-head .sg-auth-brand-mark span [class^="bi-"]::before,
.sg-panel-login-head .sg-auth-brand-mark span [class*=" bi-"]::before {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-panel-login-head .sg-auth-brand-mark strong {
    font-size: .94rem;
}

.sg-login-role-badge {
    align-self: start;
    background: var(--sg-login-badge-bg, var(--sg-login-accent));
    border: 1px solid var(--sg-login-badge-border, var(--sg-login-accent));
    border-radius: 8px;
    color: #ffffff;
    -webkit-text-fill-color: #ffffff;
    display: inline-flex;
    font-size: .68rem;
    font-weight: 900;
    justify-self: end;
    line-height: 1;
    padding: 6px 8px;
    text-transform: uppercase;
    white-space: nowrap;
}

.sg-panel-login-head .sg-login-role-badge,
.sg-panel-login-head .sg-login-role-badge * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-panel-login-head .sg-auth-brand-mark .sg-login-role-badge-inline {
    align-self: center;
    display: inline-flex;
    margin: 0;
}

.sg-panel-login-head h1 {
    color: var(--sg-text);
    font-size: clamp(1.28rem, 2.4vw, 1.8rem);
    grid-column: 1 / -1;
    line-height: 1.12;
    margin: 0;
}

.sg-panel-login-head p {
    color: var(--sg-muted);
    font-size: .86rem;
    grid-column: 1 / -1;
    line-height: 1.42;
    margin: 0;
}

.sg-panel-login-info {
    background: rgba(255, 255, 255, .62);
    border: 1px solid rgba(153, 246, 228, .72);
    border-radius: 8px;
    display: grid;
    gap: 4px;
    grid-column: 1 / -1;
    padding: 8px 9px;
}

.sg-panel-login-info > span {
    color: #0f766e;
    font-size: .72rem;
    font-weight: 850;
}

.sg-panel-login-info p {
    color: #334155;
    font-size: .82rem;
    line-height: 1.38;
    margin: 0;
}

.sg-panel-login-form {
    gap: 12px;
}

.sg-panel-login-form .sg-auth-input > span {
    color: var(--sg-text);
    font-size: .82rem;
    font-weight: 750;
}

.sg-panel-login-form .sg-auth-input > i {
    bottom: auto;
    color: #64748b;
    left: 13px;
    top: 38px;
    transform: translateY(-50%);
}

.sg-panel-login-form .form-control {
    border-radius: 9px;
    font-size: .9rem;
    min-height: 46px;
    padding-left: 40px;
}

.sg-panel-login-form .form-control::placeholder {
    color: #94a3b8;
}

.sg-panel-login-install-actions {
    display: grid;
    gap: 6px;
}

.sg-panel-login-install-actions .btn {
    align-items: center;
    border-color: #99f6e4;
    color: #0f766e;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 850;
    gap: 7px;
    justify-content: center;
    min-height: 36px;
    width: 100%;
}

.sg-panel-login-install-actions .btn:hover {
    background: #ecfeff;
    border-color: #0f766e;
    color: #0f766e;
}

.sg-panel-login-form .sg-auth-row {
    min-height: 28px;
}

.sg-panel-login-form .sg-check {
    align-items: center;
    display: inline-flex;
    gap: 7px;
}

.sg-panel-login-form .sg-check input {
    accent-color: var(--sg-login-accent);
    height: 18px;
    width: 18px;
}

.sg-panel-login-form .sg-check span,
.sg-panel-login-form .sg-auth-row a {
    font-size: .84rem;
    font-weight: 750;
}

.sg-panel-login-submit {
    background: var(--sg-login-accent) !important;
    border-color: var(--sg-login-accent) !important;
    border-radius: 9px;
    box-shadow: none !important;
    gap: 8px;
    min-height: 46px;
    width: 100%;
}

.sg-panel-login-visual {
    background: #111827;
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
    color: #fff;
    display: grid;
    grid-template-rows: minmax(190px, 1fr) auto;
    min-height: 100%;
    min-width: 0;
    overflow: hidden;
}

.sg-panel-login-visual img {
    height: 100%;
    min-height: 220px;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.sg-panel-login-visual > div {
    display: grid;
    gap: 9px;
    padding: 18px;
}

.sg-panel-login-visual span {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 850;
    gap: 6px;
    justify-self: start;
    padding: 7px 10px;
}

.sg-panel-login-visual h2 {
    font-size: clamp(1.12rem, 2vw, 1.45rem);
    line-height: 1.15;
    margin: 0;
}

.sg-panel-login-visual p {
    color: rgba(255, 255, 255, .78);
    font-size: .86rem;
    line-height: 1.45;
    margin: 0;
}

.sg-panel-login-visual ul {
    display: flex;
    flex-wrap: nowrap;
    gap: 5px;
    list-style: none;
    margin: 4px 0 0;
    padding: 0;
}

.sg-panel-login-visual li {
    align-items: center;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 8px;
    display: inline-flex;
    flex: 0 1 auto;
    font-size: .66rem;
    font-weight: 780;
    gap: 5px;
    padding: 6px 7px;
    white-space: nowrap;
}

.sg-panel-login-shell .sg-ops-tabs {
    align-items: center;
    align-content: center;
    background: #f8fffd;
    border: 1px solid #bdeee5;
    border-radius: 9px;
    box-sizing: border-box;
    gap: 4px;
    grid-auto-rows: 30px;
    height: 38px !important;
    margin: 0;
    min-height: 0;
    overflow: hidden;
    padding: 3px !important;
}

.sg-panel-login-shell .sg-ops-tabs a {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 7px;
    box-shadow: none;
    box-sizing: border-box;
    font-size: .75rem;
    gap: 5px;
    height: 30px !important;
    justify-content: center;
    line-height: 1;
    min-height: 0 !important;
    padding: 0 8px !important;
    width: 100%;
}

.sg-panel-login-shell .sg-ops-tabs a.is-active {
    background: var(--sg-login-accent);
    border-color: var(--sg-login-accent);
    box-shadow: none;
}

body.sg-theme-koyu .sg-panel-login-form-card {
    background: #111827;
    border-color: #263244;
}

body.sg-theme-koyu .sg-panel-login-head {
    background: linear-gradient(135deg, #0f172a 0%, #132f2c 60%, #111827 100%);
    border-color: #134e4a;
}

body.sg-theme-koyu .sg-panel-login-info {
    background: rgba(15, 23, 42, .68);
    border-color: #134e4a;
}

body.sg-theme-koyu .sg-panel-login-head h1,
body.sg-theme-koyu .sg-panel-login-head .sg-auth-brand-mark strong,
body.sg-theme-koyu .sg-panel-login-form .sg-auth-input > span,
body.sg-theme-koyu .sg-panel-login-form .sg-check span {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-panel-login-head p {
    color: #cbd5e1;
}

body.sg-theme-koyu .sg-panel-login-info > span {
    color: #5eead4;
}

body.sg-theme-koyu .sg-panel-login-info p {
    color: #e5edf5;
}

body.sg-theme-koyu .sg-panel-login-form .form-control {
    background: #0f172a;
    border-color: #263244;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-panel-login-install-actions .btn {
    background: #0f172a;
    border-color: #134e4a;
    color: #5eead4;
}

@media (max-width: 991.98px) {
    .sg-panel-login-shell {
        grid-template-columns: minmax(0, 1fr);
        max-width: 560px;
    }

    .sg-panel-login-visual {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .sg-panel-login-page .sg-auth-section {
        padding: 8px 0 14px;
    }

    .sg-panel-login-page .sg-auth-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .sg-panel-login-form-card {
        border-radius: 10px;
        gap: 12px;
        padding: 14px;
    }

    .sg-panel-login-head {
        gap: 6px;
    }

    .sg-panel-login-head h1 {
        font-size: 1.24rem;
    }

    .sg-login-role-badge {
        font-size: .62rem;
        padding: 6px 7px;
    }

    .sg-panel-login-form .form-control {
        min-height: 44px;
    }

    .sg-panel-login-shell .sg-ops-tabs a {
        font-size: .76rem;
        gap: 5px;
        min-height: 36px;
        padding-inline: 5px;
    }
}

/* Button contrast guard: text and icons follow the button background. */
body :is(.btn-primary, .btn-success, .btn-danger, .btn-dark, .sg-primary-button, .sg-action-primary, .sg-cart-button, .sg-auth-submit, .sg-icon-button-primary) {
    color: #ffffff !important;
}

body :is(.btn-primary, .btn-success, .btn-danger, .btn-dark, .sg-primary-button, .sg-action-primary, .sg-cart-button, .sg-auth-submit, .sg-icon-button-primary) :is(i, span, strong, small, b) {
    color: #ffffff !important;
}

body :is(.btn-warning, .btn-light) {
    color: #111827 !important;
}

body :is(.btn-warning, .btn-light) :is(i, span, strong, small, b) {
    color: #111827 !important;
}

body :is(.btn-outline-secondary, .btn-outline-light, .sg-icon-button) {
    color: #334155 !important;
}

body :is(.btn-outline-secondary, .btn-outline-light, .sg-icon-button) :is(i, span, strong, small, b) {
    color: #334155 !important;
}

body :is(.btn-outline-primary) {
    color: #0f766e !important;
}

body :is(.btn-outline-primary) :is(i, span, strong, small, b) {
    color: #0f766e !important;
}

body :is(.btn-outline-danger, .sg-icon-button-danger) {
    color: #b91c1c !important;
}

body :is(.btn-outline-danger, .sg-icon-button-danger) :is(i, span, strong, small, b) {
    color: #b91c1c !important;
}

body :is(.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-danger:hover, .btn-outline-danger:focus, .sg-icon-button-primary:hover, .sg-icon-button-primary:focus, .sg-icon-button-danger:hover, .sg-icon-button-danger:focus) {
    color: #ffffff !important;
}

body :is(.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-danger:hover, .btn-outline-danger:focus, .sg-icon-button-primary:hover, .sg-icon-button-primary:focus, .sg-icon-button-danger:hover, .sg-icon-button-danger:focus) :is(i, span, strong, small, b) {
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) :is(.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-light:hover, .btn-outline-light:focus) {
    color: #0f172a !important;
}

body:not(.sg-theme-koyu) :is(.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-light:hover, .btn-outline-light:focus) :is(i, span, strong, small, b) {
    color: #0f172a !important;
}

body.sg-theme-koyu :is(.btn-outline-secondary, .btn-outline-light, .sg-icon-button) {
    color: #e2e8f0 !important;
}

body.sg-theme-koyu :is(.btn-outline-secondary, .btn-outline-light, .sg-icon-button) :is(i, span, strong, small, b) {
    color: #e2e8f0 !important;
}

.sg-panel-alert {
    align-items: center;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .06);
    color: #14532d;
    display: grid;
    gap: 2px 10px;
    grid-template-columns: 34px auto;
    margin: 0 0 10px;
    padding: 10px 12px;
}

.sg-panel-alert > span {
    align-items: center;
    align-self: start;
    background: #dcfce7;
    border-radius: 8px;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.sg-panel-alert strong {
    color: inherit;
    font-size: .86rem;
    line-height: 1.2;
}

.sg-panel-alert p {
    color: inherit;
    font-size: .8rem;
    grid-column: 2;
    line-height: 1.35;
    margin: 0;
}

.sg-panel-alert.is-error {
    background: #f0fdfa;
    border-color: #99f6e4;
    color: #9a3412;
}

.sg-panel-alert.is-error > span {
    background: #ccfbf1;
}

.sg-flash-toast {
    align-items: center;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
    color: #14532d;
    display: grid;
    gap: 10px;
    grid-template-columns: 34px minmax(0, 1fr);
    left: 50%;
    max-width: min(420px, calc(100vw - 24px));
    padding: 10px 12px;
    position: fixed;
    top: 14px;
    transform: translateX(-50%);
    width: max-content;
    z-index: 1200;
}

.sg-flash-toast > span {
    align-items: center;
    background: #dcfce7;
    border-radius: 8px;
    display: inline-flex;
    font-size: 1.05rem;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.sg-flash-toast strong {
    color: inherit;
    display: block;
    font-size: .86rem;
    line-height: 1.15;
}

.sg-flash-toast p {
    color: inherit;
    font-size: .72rem;
    line-height: 1.32;
    margin: 2px 0 0;
}

.sg-flash-toast.is-error {
    background: #f0fdfa;
    border-color: #99f6e4;
    color: #9a3412;
}

.sg-flash-toast.is-error > span {
    background: #ccfbf1;
}

.sg-work-apply-panel {
    background: var(--sg-surface, #fff);
    border: 1px solid var(--sg-border, #e5e7eb);
    border-radius: 12px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
    margin: 14px auto 0;
    max-width: 860px;
    padding: 14px;
}

.sg-work-apply-modal .sg-modal-dialog {
    width: min(100%, 780px);
    max-height: min(92vh, 760px);
}

.sg-work-apply-modal .sg-modal-body {
    padding: 12px;
}

.sg-work-apply-modal .sg-work-apply-panel {
    border: 0;
    box-shadow: none;
    margin: 0;
    max-width: none;
    padding: 0;
}

.sg-work-apply-form {
    display: grid;
    gap: 10px;
}

.sg-work-choice-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-work-choice-grid > input {
    inline-size: 1px;
    opacity: 0;
    position: absolute;
}

.sg-work-choice-grid > label {
    align-items: flex-start;
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    cursor: pointer;
    display: grid;
    gap: 4px;
    grid-template-columns: 34px minmax(0, 1fr);
    margin: 0;
    padding: 10px;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.sg-work-choice-grid > label i {
    align-items: center;
    background: #ccfbf1;
    border-radius: 8px;
    color: #ea580c;
    display: inline-flex;
    font-size: 1.05rem;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.sg-work-choice-grid > label strong {
    color: var(--sg-text, #111827);
    font-size: .86rem;
    line-height: 1.2;
}

.sg-work-choice-grid > label small {
    color: var(--sg-muted, #64748b);
    font-size: .75rem;
    grid-column: 2;
    line-height: 1.3;
}

.sg-work-choice-grid > input:checked + label {
    border-color: #14b8a6;
    box-shadow: 0 0 0 3px rgba(251, 146, 60, .18);
    transform: translateY(-1px);
}

.sg-work-form-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-work-form-grid > .sg-auth-input:nth-child(3),
.sg-work-form-grid > .sg-auth-input:nth-child(4) {
    grid-column: 1 / -1;
}

.sg-work-apply-form .sg-auth-input > i {
    bottom: auto;
    left: 13px;
    top: 38px;
    transform: translateY(-50%);
}

.sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) > i {
    top: 38px;
}

.sg-work-extra-courier {
    display: none;
}

.sg-work-courier-grid {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(180px, 1fr) minmax(126px, auto) minmax(130px, .7fr);
}

.sg-work-license-class[hidden] {
    display: none;
}

.sg-work-compact-select .form-select {
    min-height: 36px;
    padding: 7px 32px 7px 38px;
}

.sg-work-compact-select > i {
    bottom: 10px;
    pointer-events: none;
}

.sg-work-license-check {
    align-items: center;
    background: #f8fafc;
    border: 1px solid var(--sg-border, #e5e7eb);
    border-radius: 8px;
    color: var(--sg-text, #111827);
    display: flex;
    gap: 8px;
    min-height: 36px;
    padding: 7px 10px;
}

.sg-work-license-check input {
    accent-color: var(--sg-primary);
    height: 16px;
    width: 16px;
}

.sg-work-license-check span {
    font-size: .78rem;
    font-weight: 850;
}

.sg-work-license-class .form-control {
    min-height: 36px;
    padding-bottom: 7px;
    padding-top: 7px;
}

.sg-work-license-class > i {
    bottom: 10px;
}

.sg-work-apply-form:has(#basvuru-kurye:checked) .sg-work-extra-business {
    display: none;
}

.sg-work-apply-form:has(#basvuru-kurye:checked) .sg-work-extra-courier {
    display: block;
}

.sg-work-message textarea {
    min-height: 86px;
    padding-left: 42px;
    resize: vertical;
}

body.sg-theme-koyu .sg-work-apply-panel {
    background: #111827;
    border-color: #263244;
}

body.sg-theme-koyu .sg-work-apply-modal .sg-modal-dialog {
    background: #111827;
}

body.sg-theme-koyu .sg-work-choice-grid > label {
    background: #1f2937;
    border-color: #334155;
}

body.sg-theme-koyu .sg-work-choice-grid > input:checked + label {
    border-color: #14b8a6;
    box-shadow: 0 0 0 3px rgba(251, 146, 60, .2);
}

body.sg-theme-koyu .sg-work-license-check {
    background: #1f2937;
    border-color: #334155;
    color: #f8fafc;
}

@media (max-width: 640px) {
    .sg-work-apply-panel {
        border-radius: 10px;
        margin-top: 8px;
        padding: 10px;
    }

    .sg-work-choice-grid,
    .sg-work-form-grid,
    .sg-work-courier-grid {
        grid-template-columns: 1fr;
    }
}

body.sg-theme-koyu .sg-flash-toast {
    background: #052e1b;
    border-color: #166534;
    color: #dcfce7;
}

body.sg-theme-koyu .sg-flash-toast > span {
    background: #064e3b;
}

body.sg-theme-koyu .sg-flash-toast.is-error {
    background: #431407;
    border-color: #9a3412;
    color: #ccfbf1;
}

.sg-business-panel-shell {
    margin-top: 12px;
}

.sg-business-store-switch {
    margin: 0 auto 0 18px;
}

.sg-business-store-switch label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #fff;
    font-size: .74rem;
    font-weight: 700;
}

.sg-business-store-switch select {
    width: min(260px, 34vw);
    min-height: 34px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 8px;
    padding: 5px 28px 5px 9px;
    background-color: rgba(255, 255, 255, .1);
    color: #fff;
    font-size: .82rem;
    font-weight: 700;
}

.sg-business-store-switch option {
    color: #172033;
}

.sg-business-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px;
    margin-bottom: 8px;
}

.sg-business-hero h1 {
    margin: 2px 0 4px;
    font-size: clamp(1.15rem, 2.4vw, 1.55rem);
}

.sg-business-hero p {
    margin: 0;
    color: #64748b;
    font-size: .88rem;
}

.sg-business-hero > div:first-child > span {
    display: inline-flex;
    color: #0f766e;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sg-business-mini-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(58px, 1fr));
    gap: 6px;
    min-width: 220px;
}

.sg-business-mini-stats article {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 7px 8px;
    text-align: center;
    background: #f0fdfa;
}

.sg-business-mini-stats strong,
.sg-business-mini-stats small {
    display: block;
    line-height: 1.1;
}

.sg-business-mini-stats small {
    margin-top: 3px;
    color: #64748b;
    font-size: .68rem;
}

.sg-business-detail-list article {
    grid-template-columns: minmax(0, 1.6fr) auto minmax(88px, auto) auto;
}

.sg-business-detail-list article:has(.sg-business-row-image) {
    grid-template-columns: 54px minmax(0, 1.6fr) auto minmax(88px, auto) auto;
}

.sg-business-row-image {
    width: 46px;
    height: 46px;
    border-radius: 8px;
    object-fit: cover;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
}

.sg-business-bulk-form {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.sg-business-bulk-form input[type="file"] {
    min-height: 38px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 6px 8px;
    background: #fff;
}

.sg-business-hours-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.sg-business-hours-grid article {
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    min-width: 0;
    padding: 10px;
}

.sg-business-hours-grid article.is-closed {
    opacity: .72;
}

.sg-business-hours-grid span,
.sg-business-hours-grid small {
    color: var(--sg-muted);
    display: block;
    font-size: .68rem;
    font-weight: 800;
}

.sg-business-hours-grid strong {
    color: var(--sg-text);
    display: block;
    font-size: .86rem;
    margin: 3px 0;
    white-space: nowrap;
}

.sg-business-hours-editor {
    display: grid;
    gap: 8px;
    grid-column: 1 / -1;
}

.sg-business-hours-edit-row {
    align-items: end;
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(92px, .45fr) minmax(0, 1fr) auto;
    padding: 9px;
}

.sg-business-hours-edit-row > strong {
    align-self: center;
    color: var(--sg-text);
    font-size: .82rem;
}

.sg-business-hours-edit-row label {
    margin: 0;
}

.sg-business-hours-slots {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(6, minmax(70px, 1fr));
    min-width: 0;
}

.sg-business-hours-slots label {
    min-width: 0;
}

.sg-business-hours-closed {
    align-items: center;
    display: inline-flex !important;
    flex-direction: row;
    gap: 6px !important;
    justify-content: center;
    min-height: 34px;
}

.sg-business-hours-closed input {
    min-height: 16px !important;
    width: 16px !important;
}

.sg-business-order-watch {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    background: #f0fdfa;
    padding: 9px 10px;
    margin: 0 0 8px;
}

.sg-business-order-watch.is-new {
    box-shadow: 0 0 0 3px rgba(251, 146, 60, .18);
}

.sg-business-order-watch-info strong,
.sg-business-order-watch-info small {
    display: block;
    line-height: 1.2;
}

.sg-business-order-watch-info strong {
    color: #9a3412;
    font-size: .86rem;
}

.sg-business-new-order-modal .sg-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 560px);
    max-height: min(88vh, 680px);
    grid-template-rows: auto minmax(0, 1fr) auto;
}

.sg-business-new-order-modal .sg-modal-head span {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-business-popup-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 10px;
}

.sg-business-popup-summary div,
.sg-business-popup-address,
.sg-business-popup-items div {
    min-width: 0;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
    padding: 9px 10px;
}

.sg-business-popup-summary small,
.sg-business-popup-address small {
    display: block;
    color: var(--sg-muted);
    font-size: .68rem;
    font-weight: 800;
    line-height: 1.15;
}

.sg-business-popup-summary strong {
    display: block;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .82rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-popup-address {
    margin-bottom: 10px;
}

.sg-business-popup-address p {
    margin: 4px 0 0;
    color: var(--sg-text);
    font-size: .82rem;
    line-height: 1.35;
}

.sg-business-popup-items {
    display: grid;
    gap: 6px;
}

.sg-business-popup-items div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #fff;
}

.sg-business-popup-items span {
    min-width: 0;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .8rem;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-popup-items strong {
    color: var(--sg-text);
    font-size: .8rem;
    white-space: nowrap;
}

.sg-business-popup-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 12px 14px;
    border-top: 1px solid var(--sg-border);
}

.sg-business-popup-actions .btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 34px;
}

.sg-business-popup-actions .btn-outline-danger {
    border-color: #dc2626;
    background: #fff1f2;
    color: #991b1b;
    font-weight: 700;
}

.sg-business-popup-actions .btn-outline-danger:hover,
.sg-business-popup-actions .btn-outline-danger:focus {
    border-color: #b91c1c;
    background: #dc2626;
    color: #ffffff;
}

.sg-business-order-watch-info small {
    color: #7c2d12;
    font-size: .74rem;
}

.sg-business-order-stats {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px;
    margin: 0 0 10px;
}

.sg-business-order-stats a {
    display: block;
    border: 1px solid #e5e7eb;
    border-radius: 9px;
    background: #fff;
    color: #172033;
    padding: 8px;
    text-align: center;
    text-decoration: none;
}

.sg-business-order-stats a.is-active,
.sg-business-order-stats a:hover {
    border-color: #fdba74;
    background: #f0fdfa;
}

.sg-business-order-stats strong,
.sg-business-order-stats small {
    display: block;
    line-height: 1.1;
}

.sg-business-order-stats small {
    margin-top: 3px;
    color: #64748b;
    font-size: .68rem;
}

.sg-business-order-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
}

.sg-business-order-search {
    grid-template-columns: minmax(180px, 1fr) minmax(130px, 180px) auto auto auto;
    align-items: end;
    gap: 8px;
    padding: 10px;
}

.sg-business-order-search label {
    min-width: 0;
}

.sg-business-order-search :is(input, select) {
    min-height: 36px;
    border-radius: 7px;
    font-size: .78rem;
}

.sg-business-order-row {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 8px;
    padding: 9px 10px 9px 13px;
    border-left: 4px solid #cbd5e1;
    border-radius: 8px;
}

.sg-business-order-row.is-waiting { border-left-color: #0f766e; }
.sg-business-order-row.is-preparing { border-left-color: #0ea5e9; }
.sg-business-order-row.is-courier { border-left-color: #8b5cf6; }
.sg-business-order-row.is-completed { border-left-color: #22c55e; }
.sg-business-order-row.is-canceled { border-left-color: #ef4444; }

.sg-business-order-main {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.sg-business-order-card > div:first-child a {
    color: inherit;
    text-decoration: none;
}

.sg-business-order-main a {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(112px, auto) minmax(0, 1fr);
    align-items: center;
    gap: 8px;
}

.sg-business-order-main a strong,
.sg-business-order-main a span,
.sg-business-order-main p {
    overflow: hidden;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-order-main a strong {
    color: var(--sg-text);
    font-size: .75rem;
    font-weight: 800;
}

.sg-business-order-main a span {
    color: #475569;
    font-size: .76rem;
    font-weight: 650;
}

.sg-business-order-main p {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    color: var(--sg-muted);
    font-size: .7rem;
}

.sg-business-order-main p i {
    color: var(--sg-primary);
    font-size: .78rem;
}

.sg-business-order-main p em {
    color: #cbd5e1;
    font-style: normal;
}

.sg-business-order-row .sg-order-card-meta {
    min-width: 74px;
    display: grid;
    justify-items: end;
    gap: 4px;
}

.sg-business-order-row .sg-order-card-meta strong {
    color: var(--sg-text);
    font-size: .82rem;
    font-weight: 800;
    line-height: 1;
}

.sg-business-order-row .sg-order-card-meta small {
    max-width: 112px;
    padding: 5px 7px;
    border-radius: 6px;
    color: #334155;
    background: #f1f5f9;
    font-size: .66rem;
    font-weight: 750;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
}

.sg-business-order-row.is-waiting .sg-order-card-meta small { color: #9a3412; background: #ccfbf1; }
.sg-business-order-row.is-preparing .sg-order-card-meta small { color: #075985; background: #e0f2fe; }
.sg-business-order-row.is-courier .sg-order-card-meta small { color: #5b21b6; background: #ede9fe; }
.sg-business-order-row.is-completed .sg-order-card-meta small { color: #166534; background: #dcfce7; }
.sg-business-order-row.is-canceled .sg-order-card-meta small { color: #991b1b; background: #fee2e2; }

.sg-business-order-actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.sg-business-order-actions form {
    margin: 0;
}

.sg-panel-order-list.is-compact {
    gap: 6px;
}

.sg-panel-order-list.is-compact .sg-order-card {
    border-radius: 9px;
    padding: 8px 10px;
}

.sg-panel-order-list.is-compact .sg-order-card h2 {
    font-size: .9rem;
}

.sg-panel-order-list.is-compact .sg-business-order-row {
    padding-block: 7px;
}

.sg-panel-order-list.is-compact .sg-business-order-main p {
    display: none;
}

body.sg-theme-koyu .sg-business-hero p,
body.sg-theme-koyu .sg-business-mini-stats small {
    color: #cbd5e1;
}

body.sg-theme-koyu .sg-business-mini-stats article {
    border-color: rgba(148, 163, 184, .22);
    background: #1f2937;
}

body.sg-theme-koyu .sg-business-row-image,
body.sg-theme-koyu .sg-business-bulk-form input[type="file"],
body.sg-theme-koyu .sg-business-hours-grid article,
body.sg-theme-koyu .sg-business-hours-edit-row {
    border-color: rgba(148, 163, 184, .22);
    background: #111827;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-business-order-watch,
body.sg-theme-koyu .sg-business-order-stats a,
body.sg-theme-koyu .sg-business-order-row {
    border-color: rgba(148, 163, 184, .22);
    background: #1f2937;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-business-order-row.is-waiting { border-left-color: #14b8a6; }
body.sg-theme-koyu .sg-business-order-row.is-preparing { border-left-color: #38bdf8; }
body.sg-theme-koyu .sg-business-order-row.is-courier { border-left-color: #a78bfa; }
body.sg-theme-koyu .sg-business-order-row.is-completed { border-left-color: #4ade80; }
body.sg-theme-koyu .sg-business-order-row.is-canceled { border-left-color: #f87171; }

body.sg-theme-koyu .sg-business-order-watch-info strong {
    color: #fdba74;
}

body.sg-theme-koyu .sg-business-order-watch-info small,
body.sg-theme-koyu .sg-business-order-stats small,
body.sg-theme-koyu .sg-business-hours-grid span,
body.sg-theme-koyu .sg-business-hours-grid small {
    color: #cbd5e1;
}

body.sg-theme-koyu .sg-business-order-main a strong,
body.sg-theme-koyu .sg-business-order-main a span,
body.sg-theme-koyu .sg-business-order-row .sg-order-card-meta strong {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-business-order-row .sg-order-card-meta small {
    color: #e2e8f0;
    background: #334155;
}

body.sg-theme-koyu .sg-business-new-order-modal .sg-modal-dialog,
body.sg-theme-koyu .sg-business-popup-summary div,
body.sg-theme-koyu .sg-business-popup-address,
body.sg-theme-koyu .sg-business-popup-items div {
    border-color: rgba(148, 163, 184, .22);
    background: #111827;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-business-popup-summary strong,
body.sg-theme-koyu .sg-business-popup-address p,
body.sg-theme-koyu .sg-business-popup-items span,
body.sg-theme-koyu .sg-business-popup-items strong {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-business-hours-grid strong,
body.sg-theme-koyu .sg-business-hours-edit-row > strong {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-business-order-stats a.is-active,
body.sg-theme-koyu .sg-business-order-stats a:hover {
    background: #431407;
    border-color: #14b8a6;
}

@media (max-width: 1100px) {
    .sg-business-hours-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .sg-business-panel-shell {
        margin-top: 8px;
    }

    .sg-business-store-switch {
        order: 3;
        width: 100%;
        margin: 8px 0 0;
    }

    .sg-business-store-switch label {
        justify-content: space-between;
    }

    .sg-business-store-switch select {
        width: min(100%, 220px);
    }

    .sg-business-hero {
        align-items: stretch;
        flex-direction: column;
        padding: 12px;
    }

    .sg-business-mini-stats {
        min-width: 0;
        width: 100%;
    }

    .sg-business-detail-list article {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sg-business-detail-list article:has(.sg-business-row-image) {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    .sg-business-order-stats {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .sg-business-order-search {
        grid-template-columns: minmax(0, 1fr) 126px auto;
        padding: 8px;
    }

    .sg-business-order-search small {
        grid-column: 1 / -1;
        font-size: .68rem;
    }

    .sg-business-order-card {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sg-business-order-row {
        grid-template-columns: minmax(0, 1fr) auto 34px;
        gap: 6px;
        padding: 8px 8px 8px 11px;
    }

    .sg-business-order-main a {
        grid-template-columns: minmax(0, 1fr);
        gap: 2px;
    }

    .sg-business-order-main a strong {
        font-size: .7rem;
    }

    .sg-business-order-main a span {
        font-size: .72rem;
    }

    .sg-business-order-main p {
        font-size: .66rem;
    }

    .sg-business-order-row .sg-order-card-meta {
        min-width: 66px;
    }

    .sg-business-order-row .sg-order-card-meta strong {
        font-size: .76rem;
    }

    .sg-business-order-row .sg-order-card-meta small {
        max-width: 82px;
        padding: 4px 5px;
        font-size: .6rem;
    }

    .sg-business-order-actions {
        grid-column: auto;
        justify-content: flex-end;
    }

    .sg-business-order-actions .sg-icon-button:not(:last-child) {
        display: none;
    }

    .sg-business-hours-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-business-hours-edit-row {
        grid-template-columns: 1fr;
    }

    .sg-business-hours-edit-row > strong,
    .sg-business-hours-closed {
        grid-column: 1 / -1;
    }

    .sg-business-hours-slots {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Header top alignment - final reset */
html,
body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.sg-header,
body:has(.sg-home) .sg-header,
body:has(.sg-nearby-page) .sg-header {
    position: sticky !important;
    top: 0 !important;
    margin-top: 0 !important;
    transform: none !important;
}

.sg-header .navbar,
body:has(.sg-home) .navbar,
body:has(.sg-nearby-page) .navbar,
.sg-header .navbar .container,
body:has(.sg-home) .navbar .container,
body:has(.sg-nearby-page) .navbar .container {
    margin-top: 0 !important;
}

body.sg-theme-koyu {
    --sg-text: #f8fafc;
    --sg-muted: #a7b0c0;
    --sg-border: #263244;
    --sg-soft: #151c2a;
    --sg-page-bg: #0f1623;
    --sg-surface: #151c2a;
    --sg-surface-2: #1b2637;
}

@media (prefers-color-scheme: dark) {
    body.sg-theme-sistem {
        --sg-text: #f8fafc;
        --sg-muted: #a7b0c0;
        --sg-border: #263244;
        --sg-soft: #151c2a;
        --sg-page-bg: #0f1623;
        --sg-surface: #151c2a;
        --sg-surface-2: #1b2637;
    }
}

/* Absolute final mobile category tabs: keep all three tabs visible. */
@media (max-width: 767.98px) {
    .sg-home-category-panel {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-category-panel .sg-category-tabs {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 3px !important;
        margin: 0 0 8px !important;
        padding: 3px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-category-panel .sg-category-tabs button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 44px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        padding: 4px 1px !important;
        overflow: hidden !important;
        border-radius: 6px !important;
        font-size: .48rem !important;
        line-height: 1.05 !important;
        box-sizing: border-box !important;
    }

    .sg-home-category-panel .sg-category-tabs button i {
        flex: 0 0 auto !important;
        font-size: .72rem !important;
        line-height: 1 !important;
    }

    .sg-home-category-panel .sg-category-tabs button span {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: -webkit-box !important;
        overflow: hidden !important;
        text-align: center !important;
        text-overflow: ellipsis !important;
        white-space: normal !important;
        word-break: normal !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }
}

.sg-courier-dashboard {
    display: grid;
    gap: 10px;
}

.sg-courier-hero {
    align-items: center;
    background: linear-gradient(135deg, rgba(17, 24, 39, .96), rgba(30, 41, 59, .92));
    border: 1px solid rgba(148, 163, 184, .2);
    border-radius: 12px;
    color: #fff;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 12px;
}

.sg-courier-identity {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.sg-courier-identity > span {
    color: rgba(255, 255, 255, .66);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.1;
    text-transform: uppercase;
}

.sg-courier-identity h1 {
    align-items: center;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.02rem;
    font-weight: 800;
    gap: 5px;
    line-height: 1.18;
    margin: 0;
    min-width: 0;
}

.sg-courier-identity h1 strong {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 7px;
    color: #fff;
    display: inline-flex;
    font-size: .95rem;
    font-weight: 850;
    line-height: 1.1;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: 4px 7px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-identity p {
    align-items: center;
    color: rgba(255, 255, 255, .76);
    display: flex;
    flex-wrap: wrap;
    font-size: .76rem;
    gap: 5px;
    line-height: 1.25;
    margin: 0;
    min-width: 0;
}

.sg-courier-identity p i {
    color: #14b8a6;
    font-size: .78rem;
}

.sg-courier-identity p span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-current-status {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 7px;
    color: rgba(255, 255, 255, .9);
    display: inline-flex;
    font-size: .72rem;
    font-weight: 850;
    gap: 5px;
    line-height: 1.1;
    margin-top: 2px;
    max-width: 100%;
    padding: 5px 7px;
    width: fit-content;
}

.sg-courier-current-status i {
    color: #22c55e;
    font-size: .7rem;
}

.sg-courier-current-status.is-mesgul i {
    color: #f59e0b;
}

.sg-courier-current-status.is-cevrimdisi i {
    color: #ef4444;
}

.sg-courier-current-status span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-status-form {
    align-items: end;
    display: grid;
    gap: 4px;
    min-width: 132px;
}

.sg-courier-status-form > label:not(.sg-courier-online-switch) {
    color: rgba(255, 255, 255, .64);
    font-size: .62rem;
    font-weight: 900;
    line-height: 1;
    margin: 0;
    text-transform: uppercase;
}

.sg-courier-online-switch {
    align-items: center;
    background: rgba(255, 255, 255, .09);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 10px;
    color: inherit;
    cursor: pointer;
    display: grid;
    gap: 7px;
    grid-template-columns: minmax(0, 1fr) 44px;
    font: inherit;
    margin: 0;
    min-height: 40px;
    padding: 5px 6px;
    text-align: left;
    width: 100%;
}

.sg-courier-online-switch.is-active {
    background: rgba(34, 197, 94, .12);
    border-color: rgba(34, 197, 94, .32);
}

.sg-courier-online-switch.is-passive {
    background: rgba(239, 68, 68, .12);
    border-color: rgba(239, 68, 68, .32);
}

.sg-courier-switch-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.sg-courier-switch-copy b,
.sg-courier-switch-copy small {
    display: block;
    line-height: 1.1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-switch-copy b {
    color: #fff;
    font-size: .75rem;
    font-weight: 900;
}

.sg-courier-switch-copy small {
    color: rgba(255, 255, 255, .66);
    font-size: .6rem;
    font-weight: 750;
}

.sg-courier-online-switch i {
    background: rgba(239, 68, 68, .95);
    border-radius: 999px;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2);
    display: block;
    height: 26px;
    position: relative;
    transition: background .18s ease;
    width: 44px;
}

.sg-courier-online-switch i::after {
    background: #fff;
    border-radius: 999px;
    box-shadow: 0 4px 10px rgba(15, 23, 42, .24);
    content: "";
    height: 20px;
    left: 3px;
    position: absolute;
    top: 3px;
    transition: transform .18s ease;
    width: 20px;
}

.sg-courier-online-switch.is-active i {
    background: #22c55e !important;
}

.sg-courier-online-switch.is-passive i {
    background: #ef4444 !important;
}

.sg-courier-online-switch.is-active i::after {
    transform: translateX(18px);
}

.sg-courier-online-switch.is-passive i::after {
    transform: translateX(0);
}

.sg-courier-kpi-grid {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.sg-courier-kpi-grid article {
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    min-width: 0;
    padding: 9px;
}

.sg-courier-kpi-grid span,
.sg-courier-kpi-grid small {
    color: var(--sg-muted);
    display: block;
    font-size: .7rem;
    line-height: 1.2;
}

.sg-courier-kpi-grid strong {
    color: var(--sg-text);
    display: block;
    font-size: .98rem;
    line-height: 1.25;
    margin: 2px 0;
    white-space: nowrap;
}

.sg-courier-tools {
    align-items: center;
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: auto auto auto minmax(0, 1fr);
    padding: 8px;
}

.sg-courier-tools .btn {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    justify-content: center;
    min-height: 34px;
    white-space: nowrap;
}

.sg-courier-tools .btn.is-muted {
    opacity: .72;
}

.sg-courier-tools [data-courier-location-status] {
    color: var(--sg-muted);
    font-size: .78rem;
    line-height: 1.35;
    min-width: 0;
    overflow-wrap: anywhere;
    text-align: right;
}

.sg-courier-location-card {
    align-items: center;
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(120px, 180px) minmax(0, 1fr);
    margin-top: 8px;
    padding: 8px 10px;
}

.sg-courier-location-card-inline {
    margin-top: 0;
}

.sg-courier-location-card > div {
    align-items: center;
    color: var(--sg-muted);
    display: inline-flex;
    font-size: .72rem;
    font-weight: 800;
    gap: 5px;
    min-width: 0;
}

.sg-courier-location-card > strong {
    color: var(--sg-text);
    font-size: .78rem;
    line-height: 1.2;
    white-space: nowrap;
}

.sg-courier-location-card > strong.is-loading {
    color: #d97706;
}

.sg-courier-location-card > strong.is-ok {
    color: #16a34a;
}

.sg-courier-location-card > strong.is-warn {
    color: #dc2626;
}

.sg-courier-location-card p {
    align-items: center;
    color: var(--sg-muted);
    display: flex;
    flex-wrap: wrap;
    font-size: .72rem;
    gap: 5px 8px;
    justify-content: flex-end;
    margin: 0;
    min-width: 0;
}

.sg-courier-location-card p span {
    white-space: nowrap;
}

.sg-courier-location-card p b {
    color: var(--sg-text);
    font-weight: 800;
}

.sg-courier-filter-tabs {
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    padding: 4px;
}

.sg-courier-filter-tabs a {
    align-items: center;
    border-radius: 6px;
    color: var(--sg-muted);
    display: inline-flex;
    font-size: .72rem;
    font-weight: 800;
    gap: 4px;
    justify-content: center;
    min-height: 32px;
    min-width: 0;
    text-decoration: none;
}

.sg-courier-filter-tabs a.is-active {
    background: var(--sg-primary);
    color: #fff;
}

.sg-courier-card {
    grid-template-columns: minmax(0, 1fr) auto 22px;
}

.sg-courier-card h2,
.sg-courier-card p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-money-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-courier-money-grid > section {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    min-width: 0;
    padding: 10px;
}

.sg-mini-section-title {
    align-items: center;
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}

.sg-mini-section-title span {
    color: var(--sg-primary);
    font-size: .7rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-mini-section-title strong {
    color: var(--sg-text);
    font-size: .86rem;
}

.sg-muted-line {
    color: var(--sg-muted);
    font-size: .82rem;
    margin: 0;
}

.sg-courier-earning-bars,
.sg-courier-cash-list {
    display: grid;
    gap: 6px;
}

.sg-courier-earning-bars article,
.sg-courier-cash-list article {
    align-items: center;
    display: grid;
    gap: 7px;
    grid-template-columns: minmax(74px, .8fr) minmax(60px, 1fr) auto;
    min-width: 0;
}

.sg-courier-earning-bars strong,
.sg-courier-cash-list strong {
    color: var(--sg-text);
    display: block;
    font-size: .78rem;
    line-height: 1.2;
}

.sg-courier-earning-bars small,
.sg-courier-cash-list small {
    color: var(--sg-muted);
    display: block;
    font-size: .68rem;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-earning-bars span {
    background: var(--sg-soft);
    border-radius: 5px;
    display: block;
    height: 8px;
    overflow: hidden;
}

.sg-courier-earning-bars span i {
    background: var(--sg-primary);
    display: block;
    height: 100%;
}

.sg-courier-earning-bars b,
.sg-courier-cash-list b {
    color: var(--sg-text);
    font-size: .78rem;
    white-space: nowrap;
}

.sg-courier-cash-list article {
    grid-template-columns: 28px minmax(0, 1fr) auto;
}

.sg-courier-cash-list i {
    align-items: center;
    background: rgba(0, 168, 132, .12);
    border-radius: 7px;
    color: var(--sg-primary);
    display: inline-flex;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.sg-courier-date-filter {
    align-items: end;
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
    padding: 9px;
}

.sg-courier-date-filter label {
    display: grid;
    gap: 4px;
    margin: 0;
    min-width: 0;
}

.sg-courier-date-filter label span {
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 850;
}

.sg-courier-date-filter .btn {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    justify-content: center;
    min-height: 38px;
}

.sg-courier-stat-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.sg-courier-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.sg-courier-chip-list span {
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: inline-grid;
    gap: 2px;
    min-width: 108px;
    padding: 8px 10px;
}

.sg-courier-chip-list b {
    color: var(--sg-text);
    font-size: .78rem;
    line-height: 1.2;
}

.sg-courier-chip-list small {
    color: var(--sg-muted);
    font-size: .68rem;
}

.sg-courier-history-list {
    display: grid;
    gap: 6px;
}

.sg-courier-history-list a {
    align-items: center;
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: inherit;
    display: grid;
    gap: 7px;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    padding: 8px;
    text-decoration: none;
}

.sg-courier-history-list i {
    align-items: center;
    background: rgba(22, 163, 74, .12);
    border-radius: 7px;
    color: #16a34a;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.sg-courier-history-list strong,
.sg-courier-history-list small {
    display: block;
    line-height: 1.2;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-history-list strong {
    color: var(--sg-text);
    font-size: .78rem;
}

.sg-courier-history-list small {
    color: var(--sg-muted);
    font-size: .68rem;
    margin-top: 3px;
}

.sg-courier-history-list b {
    color: var(--sg-text);
    font-size: .78rem;
    white-space: nowrap;
}

.sg-courier-profile-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sg-courier-ready-card {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    margin-bottom: 10px;
    padding: 10px;
}

.sg-courier-ready-actions {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sg-courier-ready-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    justify-content: center;
    min-height: 34px;
    white-space: nowrap;
}

.sg-courier-settings-card {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    display: grid;
    gap: 10px;
    margin-bottom: 10px;
    padding: 10px;
}

.sg-courier-settings-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sg-courier-settings-grid label {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.sg-courier-settings-grid label span {
    color: var(--sg-muted);
    font-size: .7rem;
    font-weight: 850;
}

.sg-courier-settings-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.sg-courier-settings-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    min-height: 34px;
}

.sg-courier-settings-note {
    color: var(--sg-muted);
    font-size: .74rem;
    line-height: 1.35;
    margin: 0;
}

.sg-courier-profile-grid article {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: 10px;
}

.sg-courier-profile-grid i {
    align-items: center;
    background: rgba(0, 168, 132, .12);
    border-radius: 7px;
    color: var(--sg-primary);
    display: inline-flex;
    height: 30px;
    justify-content: center;
    margin-bottom: 3px;
    width: 30px;
}

.sg-courier-profile-grid span,
.sg-courier-profile-grid small {
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.2;
}

.sg-courier-profile-grid strong {
    color: var(--sg-text);
    font-size: .9rem;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-account-menu {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    margin: 10px 0;
}

.sg-courier-account-menu a {
    align-content: start;
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 9px;
    color: var(--sg-text);
    display: grid;
    gap: 4px;
    min-height: 92px;
    min-width: 0;
    padding: 10px;
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.sg-courier-account-menu a:hover,
.sg-courier-account-menu a:focus {
    border-color: rgba(0, 168, 132, .35);
    box-shadow: 0 12px 26px rgba(15, 23, 42, .08);
    color: var(--sg-text);
    transform: translateY(-1px);
}

.sg-courier-account-menu i {
    align-items: center;
    background: rgba(0, 168, 132, .12);
    border-radius: 8px;
    color: var(--sg-primary);
    display: inline-flex;
    font-size: 1rem;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.sg-courier-account-menu span,
.sg-courier-account-menu small {
    display: block;
    line-height: 1.2;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sg-courier-account-menu span {
    font-size: .78rem;
    font-weight: 900;
    white-space: nowrap;
}

.sg-courier-account-menu small {
    color: var(--sg-muted);
    font-size: .66rem;
}

.sg-courier-profile-form {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-courier-profile-form label {
    display: grid;
    gap: 5px;
    margin: 0;
    min-width: 0;
}

.sg-courier-profile-form label span {
    color: var(--sg-muted);
    font-size: .76rem;
    font-weight: 850;
}

.sg-select,
.form-select,
.sg-courier-profile-form .form-select,
.sg-courier-settings-card .form-select,
.sg-admin-courier-form .form-select,
.sg-admin-courier-form select {
    appearance: none;
    background-color: var(--sg-surface);
    background-image: linear-gradient(45deg, transparent 50%, #64748b 50%), linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%;
    background-repeat: no-repeat;
    background-size: 5px 5px, 5px 5px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    font-size: .82rem;
    font-weight: 750;
    min-height: 38px;
    padding: 8px 32px 8px 10px;
}

.sg-admin-edit-form label:has(select[name="isletme_id"]) select,
.sg-admin-edit-form label:has(select[name="arac_tipi"]) select {
    min-height: 36px;
    padding-bottom: 7px;
    padding-top: 7px;
}

.sg-admin-edit-form label:has(select[name="isletme_id"]) {
    align-self: end;
}

.sg-select:focus,
.form-select:focus,
.sg-courier-profile-form .form-select:focus,
.sg-courier-settings-card .form-select:focus,
.sg-admin-courier-form .form-select:focus,
.sg-admin-courier-form select:focus {
    border-color: rgba(0, 168, 132, .62);
    box-shadow: 0 0 0 3px rgba(0, 168, 132, .14);
    outline: 0;
}

.sg-courier-profile-form .sg-courier-check {
    align-items: center;
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: flex;
    min-height: 38px;
    padding: 8px 10px;
}

.sg-courier-profile-form .btn {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    grid-column: 1 / -1;
    justify-content: center;
}

.sg-courier-account-form {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    margin-top: 10px;
    padding: 12px;
}

.sg-courier-security-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) 320px;
}

.sg-courier-profile-note {
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 6px;
    margin-top: 10px;
    padding: 10px;
}

.sg-courier-profile-note strong {
    color: var(--sg-text);
    font-size: .86rem;
}

.sg-courier-profile-note p {
    color: var(--sg-muted);
    font-size: .78rem;
    line-height: 1.4;
    margin: 0;
}

.sg-courier-logout-card {
    align-items: center;
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-top: 10px;
    padding: 10px;
}

.sg-courier-logout-card div {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.sg-courier-logout-card strong {
    color: var(--sg-text);
    font-size: .84rem;
    line-height: 1.2;
}

.sg-courier-logout-card span {
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.25;
}

.sg-courier-logout-card .btn {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 7px;
}

body.sg-theme-dark .sg-courier-account-menu a,
body.sg-theme-dark .sg-courier-account-form,
body.sg-theme-dark .sg-courier-logout-card,
body.sg-theme-dark .sg-courier-ready-card,
body.sg-theme-dark .sg-courier-settings-card,
body.sg-theme-koyu .sg-courier-ready-card,
body.sg-theme-koyu .sg-courier-settings-card {
    background: rgba(15, 23, 42, .92);
    border-color: rgba(148, 163, 184, .22);
}

body.sg-theme-koyu :is(.sg-select, .form-select, .sg-courier-profile-form .form-select, .sg-courier-settings-card .form-select, .sg-admin-courier-form .form-select, .sg-admin-courier-form select) {
    background-color: #111827;
    border-color: rgba(148, 163, 184, .28);
    color: #f8fafc;
}

body.sg-theme-dark .sg-courier-account-menu a:hover,
body.sg-theme-dark .sg-courier-account-menu a:focus {
    border-color: rgba(251, 146, 60, .5);
    box-shadow: 0 12px 26px rgba(0, 0, 0, .25);
}

body.sg-theme-koyu .sg-courier-route > div,
body.sg-theme-koyu .sg-courier-contact-strip,
body.sg-theme-koyu .sg-courier-detail-items .sg-cart-item,
body.sg-theme-koyu .sg-courier-payment-card,
body.sg-theme-koyu .sg-courier-pin-card {
    border-color: rgba(148, 163, 184, .22);
    background: #111827;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-courier-payment-card strong,
body.sg-theme-koyu .sg-courier-pin-card strong {
    color: #f8fafc;
}

.sg-courier-cash-limit {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    padding: 10px;
}

.sg-courier-cash-limit > div {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.sg-courier-cash-limit span {
    color: var(--sg-muted);
    font-size: .76rem;
    font-weight: 850;
}

.sg-courier-cash-limit strong {
    color: var(--sg-text);
    font-size: .9rem;
    white-space: nowrap;
}

.sg-courier-cash-limit em {
    background: var(--sg-soft);
    border-radius: 999px;
    display: block;
    height: 9px;
    overflow: hidden;
}

.sg-courier-cash-limit em i {
    background: linear-gradient(90deg, #16a34a, var(--sg-primary));
    display: block;
    height: 100%;
}

.sg-courier-collection-list {
    display: grid;
    gap: 7px;
}

.sg-courier-collection-list article {
    align-items: center;
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: 32px minmax(0, 1fr) auto;
    padding: 8px;
}

.sg-courier-collection-list i {
    align-items: center;
    border-radius: 8px;
    display: inline-flex;
    height: 32px;
    justify-content: center;
    width: 32px;
}

.sg-courier-collection-list article.is-open i {
    background: rgba(0, 168, 132, .14);
    color: var(--sg-primary);
}

.sg-courier-collection-list article.is-closed i {
    background: rgba(22, 163, 74, .12);
    color: #16a34a;
}

.sg-courier-collection-list strong,
.sg-courier-collection-list small {
    display: block;
    line-height: 1.2;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-collection-list strong {
    color: var(--sg-text);
    font-size: .8rem;
}

.sg-courier-collection-list small {
    color: var(--sg-muted);
    font-size: .68rem;
    margin-top: 3px;
}

.sg-courier-collection-list b {
    color: var(--sg-text);
    font-size: .82rem;
    white-space: nowrap;
}

.sg-courier-live-head {
    align-items: center;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 8px;
    padding: 9px 10px;
}

.sg-courier-live-head .sg-panel-title {
    min-width: 0;
}

.sg-courier-live-head .sg-panel-title span {
    font-size: .66rem;
    line-height: 1;
    margin-bottom: 3px;
}

.sg-courier-live-head .sg-panel-title h1 {
    font-size: clamp(1rem, 2.5vw, 1.22rem);
    line-height: 1.1;
    margin: 0;
}

.sg-courier-live-head .sg-panel-title p {
    align-items: center;
    color: var(--sg-muted);
    display: flex;
    flex-wrap: wrap;
    font-size: .76rem;
    gap: 4px;
    line-height: 1.15;
    margin: 4px 0 0;
}

.sg-courier-live-head .sg-panel-title p strong {
    color: var(--sg-text);
    font-size: .78rem;
}

.sg-courier-live-head .btn {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 5px;
    min-height: 34px;
    padding: 6px 9px;
    white-space: nowrap;
}

.sg-courier-live-tools {
    display: grid;
    gap: 5px;
    grid-template-columns: repeat(4, minmax(0, auto));
    justify-content: end;
    min-width: 0;
}

.sg-courier-live-tools .btn {
    justify-content: center;
    min-width: 0;
    padding-left: 8px;
    padding-right: 8px;
}

.sg-courier-live-status {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sg-courier-live-status article {
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    min-width: 0;
    padding: 9px;
}

.sg-courier-live-status span {
    color: var(--sg-muted);
    display: block;
    font-size: .7rem;
    font-weight: 850;
}

.sg-courier-live-status strong {
    color: var(--sg-text);
    display: block;
    font-size: .92rem;
    line-height: 1.2;
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-connection {
    align-items: center;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: inline-flex;
    gap: 7px;
    justify-self: start;
    line-height: 1.25;
    margin: 8px 0 10px;
    max-width: 100%;
    padding: 7px 10px;
}

.sg-courier-connection i {
    font-size: .92rem;
}

.sg-courier-connection span {
    font-size: .76rem;
    font-weight: 800;
}

.sg-courier-connection.is-online {
    background: rgba(22, 163, 74, .1);
    border-color: rgba(22, 163, 74, .22);
    color: #15803d;
}

.sg-courier-connection.is-offline {
    background: rgba(220, 38, 38, .1);
    border-color: rgba(220, 38, 38, .22);
    color: #b91c1c;
}

.sg-courier-live-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) 240px;
}

.sg-courier-live-main,
.sg-courier-live-side {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.sg-courier-next-action {
    background: linear-gradient(135deg, rgba(0, 168, 132, .14), rgba(0, 168, 132, .04));
    border: 1px solid rgba(0, 168, 132, .22);
    border-radius: 10px;
    display: grid;
    gap: 7px;
    padding: 12px;
}

.sg-courier-next-action span {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-courier-next-action h2 {
    color: var(--sg-text);
    font-size: 1.15rem;
    line-height: 1.2;
    margin: 0;
}

.sg-courier-next-action p {
    color: var(--sg-muted);
    font-size: .82rem;
    line-height: 1.4;
    margin: 0;
}

.sg-courier-next-action form {
    display: grid;
    gap: 8px;
    margin-top: 3px;
}

.sg-courier-next-action .btn {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    justify-content: center;
    min-height: 42px;
}

.sg-courier-live-side article {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 3px;
    padding: 10px;
}

.sg-courier-live-side span,
.sg-courier-live-side small {
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.2;
}

.sg-courier-live-side strong {
    color: var(--sg-text);
    font-size: .92rem;
    line-height: 1.2;
}

.sg-courier-live-route {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 0;
}

.sg-courier-live-map-card {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    display: grid;
    gap: 9px;
    padding: 10px;
}

.sg-courier-live-map {
    aspect-ratio: 16 / 9;
    background: var(--sg-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    min-height: 190px;
    overflow: hidden;
    width: 100%;
}

.sg-courier-live-map-card .btn {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    justify-self: start;
}

.sg-courier-live-actions {
    margin-bottom: 0;
}

.sg-courier-task-modal .sg-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 560px);
    max-height: min(88vh, 680px);
    grid-template-rows: auto minmax(0, 1fr) auto;
}

.sg-courier-task-modal .sg-modal-head span {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-courier-popup-route {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 9px;
}

.sg-courier-popup-route div,
.sg-courier-popup-summary span {
    min-width: 0;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
    padding: 9px 10px;
}

.sg-courier-popup-route small {
    display: block;
    color: var(--sg-muted);
    font-size: .68rem;
    font-weight: 850;
}

.sg-courier-popup-route strong {
    display: block;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .84rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-popup-route p {
    margin: 4px 0 0;
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.3;
}

.sg-courier-popup-summary {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sg-courier-popup-summary span {
    align-items: center;
    display: flex;
    gap: 6px;
}

.sg-courier-popup-summary i {
    color: var(--sg-primary);
    flex: 0 0 auto;
}

.sg-courier-popup-summary b {
    min-width: 0;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-courier-popup-actions {
    align-items: center;
    border-top: 1px solid var(--sg-border);
    display: flex;
    gap: 6px;
    justify-content: flex-end;
    padding: 12px 14px;
}

.sg-courier-popup-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    min-height: 34px;
}

body.sg-theme-koyu .sg-courier-task-modal .sg-modal-dialog,
body.sg-theme-koyu .sg-courier-popup-route div,
body.sg-theme-koyu .sg-courier-popup-summary span {
    border-color: rgba(148, 163, 184, .22);
    background: #111827;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-courier-popup-route strong,
body.sg-theme-koyu .sg-courier-popup-summary b {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-courier-location-card {
    background: rgba(15, 23, 42, .72);
    border-color: rgba(148, 163, 184, .22);
}

body.sg-theme-koyu .sg-courier-location-card > strong,
body.sg-theme-koyu .sg-courier-location-card p b {
    color: #f8fafc;
}

@media (max-width: 767.98px) {
    .sg-courier-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-tools {
        align-items: stretch;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sg-courier-tools [data-courier-location-status] {
        text-align: left;
    }

    .sg-courier-location-card {
        grid-column: 1 / -1;
        grid-template-columns: minmax(0, 1fr);
        margin-top: 0;
    }

    .sg-courier-location-card p {
        justify-content: flex-start;
    }

    .sg-courier-tools .btn {
        font-size: .72rem;
        gap: 4px;
        min-height: 32px;
        padding-left: 6px;
        padding-right: 6px;
    }

    .sg-courier-filter-tabs a {
        font-size: .66rem;
        gap: 3px;
        min-height: 30px;
    }

    .sg-courier-filter-tabs a i {
        font-size: .72rem;
    }

    .sg-courier-hero {
        grid-template-columns: minmax(0, 1fr) 104px;
        padding: 10px;
    }

    .sg-courier-identity > span {
        font-size: .58rem;
    }

    .sg-courier-identity h1 {
        font-size: .86rem;
    }

    .sg-courier-identity h1 strong {
        font-size: .82rem;
        max-width: min(165px, 100%);
        padding: 3px 6px;
    }

    .sg-courier-identity p {
        font-size: .68rem;
        gap: 4px;
    }

    .sg-courier-status-form {
        min-width: 0;
    }

    .sg-courier-online-switch {
        grid-template-columns: minmax(0, 1fr) 42px;
        min-height: 36px;
        padding: 5px 6px;
    }

    .sg-courier-switch-copy b {
        font-size: .7rem;
    }

    .sg-courier-switch-copy small {
        font-size: .55rem;
    }

    .sg-courier-online-switch i {
        height: 23px;
        width: 42px;
    }

    .sg-courier-online-switch i::after {
        height: 17px;
        width: 17px;
    }

    .sg-courier-online-switch.is-active i::after {
        transform: translateX(19px);
    }

    .sg-courier-online-switch.is-passive i::after {
        transform: translateX(0);
    }

    .sg-courier-money-grid {
        grid-template-columns: 1fr;
    }

    .sg-courier-date-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-date-filter .btn {
        grid-column: 1 / -1;
    }

    .sg-courier-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-profile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-ready-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-ready-actions .btn {
        font-size: .68rem;
        min-height: 32px;
        padding-left: 6px;
        padding-right: 6px;
    }

    .sg-courier-settings-grid {
        grid-template-columns: 1fr;
    }

    .sg-courier-settings-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-settings-actions .btn {
        justify-content: center;
        width: 100%;
    }

    .sg-courier-account-menu {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sg-courier-profile-form {
        grid-template-columns: 1fr;
    }

    .sg-courier-security-grid {
        grid-template-columns: 1fr;
    }

    .sg-courier-live-head {
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 8px;
    }

    .sg-courier-live-head .sg-panel-title h1 {
        font-size: 1rem;
    }

    .sg-courier-live-head .btn {
        min-height: 32px;
        padding: 6px 8px;
    }

    .sg-courier-live-tools {
        grid-template-columns: repeat(4, minmax(32px, 1fr));
        width: 100%;
    }

    .sg-courier-live-tools .btn {
        padding-left: 6px;
        padding-right: 6px;
    }

    .sg-courier-live-tools .btn span {
        display: none;
    }

    .sg-courier-live-status {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-popup-route,
    .sg-courier-popup-summary {
        grid-template-columns: 1fr;
    }

    .sg-courier-popup-actions {
        justify-content: stretch;
    }

    .sg-courier-popup-actions .btn,
    .sg-courier-popup-actions form {
        flex: 1 1 0;
    }

    .sg-courier-popup-actions .btn {
        justify-content: center;
        width: 100%;
    }

    .sg-courier-connection {
        justify-self: stretch;
        width: 100%;
    }

    .sg-courier-live-grid {
        grid-template-columns: 1fr;
    }

    .sg-courier-detail-layout {
        grid-template-columns: 1fr;
    }

    .sg-courier-detail-main > .sg-panel-title-row {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sg-courier-detail-layout .sg-cart-summary dl {
        grid-template-columns: minmax(86px, .62fr) minmax(0, 1fr);
    }

    .sg-courier-live-route {
        grid-template-columns: 1fr;
    }

    .sg-courier-live-side {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 420px) {
    .sg-courier-hero {
        grid-template-columns: 1fr;
    }

    .sg-courier-status-form {
        align-items: start;
        justify-self: stretch;
    }

    .sg-courier-account-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-live-head .btn span {
        display: none;
    }

    .sg-courier-live-head .btn {
        width: 34px;
        justify-content: center;
        padding: 0;
    }

    .sg-courier-detail-main > .sg-panel-title-row {
        grid-template-columns: 1fr;
    }

    .sg-courier-detail-main .sg-courier-total {
        justify-self: start;
    }

    .sg-courier-detail-items .sg-cart-item {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sg-courier-live-side {
        grid-template-columns: 1fr;
    }
}

/* True end-of-file overflow guard for mobile pages. */
@media (max-width: 767.98px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    .sg-header,
    .sg-header .navbar,
    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container,
    .sg-page,
    .sg-home,
    .sg-section,
    .sg-home-shell,
    .sg-main-shell,
    .sg-home-visitor-stack,
    .sg-home-block,
    .sg-home-category-panel,
    .sg-home-stores,
    .sg-nearby-shell {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }

    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container {
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-home-shell,
    .sg-main-shell {
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-home-head,
    .sg-home-visitor-stack,
    .sg-home-category-panel,
    .sg-home-block,
    .sg-home-block-title {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .sg-promo-slider,
    .sg-category-circles {
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    .sg-promo-slide,
    .sg-category-circle,
    .sg-store,
    .sg-home-block-title > div {
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* Desktop promo layout: campaigns must stay inside the main shell. */
@media (min-width: 768px) {
    .sg-home-promo-panel,
    .sg-home-promo-panel .sg-home-block-title,
    .sg-home-promo-panel .sg-promo-slider {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-promo-panel .sg-promo-slider {
        display: grid !important;
        grid-auto-flow: row !important;
        grid-auto-columns: unset !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 0 !important;
        scroll-snap-type: none !important;
    }

    .sg-home-promo-panel .sg-promo-slide {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        scroll-snap-align: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .sg-home-promo-panel .sg-promo-slider {
        grid-template-columns: 1fr !important;
    }
}

/* Final mobile overflow guard: page blocks must stay inside the viewport. */
@media (max-width: 767.98px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    .sg-header,
    .sg-header .navbar,
    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container,
    .sg-page,
    .sg-home,
    .sg-section,
    .sg-home-shell,
    .sg-main-shell,
    .sg-home-visitor-stack,
    .sg-home-block,
    .sg-home-category-panel,
    .sg-home-stores,
    .sg-nearby-shell {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }

    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container {
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-home-shell,
    .sg-main-shell {
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-home-head,
    .sg-home-visitor-stack,
    .sg-home-category-panel,
    .sg-home-block,
    .sg-home-block-title {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .sg-promo-slider {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 2px !important;
        padding-left: 2px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    .sg-promo-slide {
        max-width: 100% !important;
    }

    .sg-category-circles {
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    .sg-category-circle,
    .sg-store,
    .sg-home-block-title > div {
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* Order stats must keep a predictable responsive grid. */
.sg-order-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 767.98px) {
    .sg-order-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .sg-order-stats article {
        min-height: 74px;
        padding: 10px;
    }

    .sg-order-stats span {
        font-size: .64rem;
        line-height: 1.1;
    }

    .sg-order-stats strong {
        margin-top: 4px;
        font-size: .96rem;
        line-height: 1.1;
    }

.sg-order-stats small {
        margin-top: 4px;
        font-size: .64rem;
        line-height: 1.1;
    }
}

/* Customer order tracking */
.sg-order-tracker {
    display: grid;
    gap: 10px;
    margin: 12px 0;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: linear-gradient(135deg, #f0fdfa, #ffffff);
}

.sg-order-tracker-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.sg-order-tracker-head span {
    display: block;
    color: var(--sg-primary);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-order-tracker-head strong {
    display: block;
    margin-top: 3px;
    color: var(--sg-ink);
    font-size: 1rem;
    line-height: 1.2;
}

.sg-order-tracker-head small {
    display: block;
    margin-top: 3px;
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

.sg-order-tracker-actions {
    display: flex;
    flex: 0 0 auto;
    gap: 6px;
}

.sg-order-tracker-actions .sg-icon-button {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #fff;
}

.sg-order-tracker-actions .sg-icon-button.is-on {
    border-color: #fdba74;
    background: #ccfbf1;
    color: #134e4a;
}

.sg-order-tracker-actions .sg-icon-button.is-loading i {
    animation: sg-spin .7s linear infinite;
}

.sg-order-tracker-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.sg-order-tracker-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
    padding: 5px 8px;
    border: 1px solid #99f6e4;
    border-radius: 7px;
    background: #fff;
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 800;
}

.sg-order-live-pill {
    overflow: hidden;
    position: relative;
}

.sg-order-live-pill.is-live {
    background: linear-gradient(120deg, #ffffff 0%, #ecfdf5 42%, #fff7ed 58%, #ffffff 100%);
    background-size: 220% 100%;
    border-color: #5eead4;
    animation: sg-live-pill-flow 2.8s ease-in-out infinite;
}

.sg-order-live-pill i {
    align-items: center;
    color: #0f766e;
    display: inline-flex;
    height: 18px;
    justify-content: center;
    position: relative;
    width: 18px;
    z-index: 1;
}

.sg-order-live-pill.is-live i::after {
    animation: sg-live-wave 1.65s ease-out infinite;
    border: 2px solid rgba(15, 118, 110, .45);
    border-radius: 999px;
    content: "";
    inset: -5px;
    opacity: 0;
    position: absolute;
}

@keyframes sg-live-pill-flow {
    0%, 100% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }
}

@keyframes sg-live-wave {
    0% {
        opacity: .85;
        transform: scale(.55);
    }

    75%, 100% {
        opacity: 0;
        transform: scale(1.25);
    }
}

@media (prefers-reduced-motion: reduce) {
    .sg-order-live-pill.is-live,
    .sg-order-live-pill.is-live i::after {
        animation: none;
    }
}

.sg-order-tracker-meta b {
    color: var(--sg-ink);
}

.sg-order-steps {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 6px;
}

.sg-order-steps article {
    display: grid;
    align-content: start;
    gap: 4px;
    min-width: 0;
    padding: 9px 7px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    color: var(--sg-muted);
}

.sg-order-step-mark {
    align-items: center;
    display: inline-flex;
    gap: 4px;
    min-width: 0;
}

.sg-order-steps i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: #eef2f7;
    color: #94a3b8;
    font-size: .82rem;
}

.sg-order-steps strong {
    color: inherit;
    font-size: .72rem;
    line-height: 1.15;
}

.sg-order-steps small {
    color: inherit;
    font-size: .62rem;
    line-height: 1.2;
}

.sg-order-steps time {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    color: #9a3412;
    display: inline-flex;
    font-size: .64rem;
    font-weight: 750;
    line-height: 1;
    padding: 3px 5px;
    white-space: nowrap;
}

.sg-order-steps time[hidden] {
    display: none !important;
}

.sg-order-steps article.is-active {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #166534;
}

.sg-order-steps article.is-active time {
    background: #dcfce7;
    border-color: #86efac;
    color: #14532d;
}

.sg-order-steps article.is-active i {
    background: #22c55e;
    color: #fff;
}

.sg-order-steps article.is-current {
    border-color: #fdba74;
    box-shadow: 0 10px 24px rgba(249, 115, 22, .12);
}

.sg-order-tracker.is-canceled {
    background: linear-gradient(135deg, #fff1f2, #ffffff);
}

.sg-order-tracker.is-canceled .sg-order-steps article {
    border-color: #fecdd3;
    background: #fff1f2;
    color: #be123c;
}

@keyframes sg-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 767.98px) {
    .sg-order-tracker {
        padding: 10px;
    }

    .sg-order-tracker-head {
        align-items: center;
    }

    .sg-order-tracker-actions {
        gap: 5px;
    }

    .sg-order-tracker-actions .sg-icon-button {
        width: 32px;
        height: 32px;
    }

    .sg-order-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

body.sg-theme-koyu .sg-order-tracker {
    border-color: #263244 !important;
    background: linear-gradient(135deg, #111827, #0f172a) !important;
}

body.sg-theme-koyu :is(.sg-order-tracker-actions .sg-icon-button, .sg-order-tracker-meta span, .sg-order-steps article) {
    border-color: #263244 !important;
    background: #111827 !important;
    color: #cbd5e1 !important;
}

body.sg-theme-koyu .sg-home-block-title {
    border-color: #263244 !important;
    background: linear-gradient(90deg, #111827, #0f172a) !important;
}

body.sg-theme-koyu .sg-account-order-icon {
    background: rgba(249, 115, 22, .16) !important;
    color: #99f6e4 !important;
}

body.sg-theme-koyu .sg-account-order-total {
    background: rgba(34, 197, 94, .14) !important;
    color: #bbf7d0 !important;
}

body.sg-theme-koyu .sg-account-order-body strong {
    color: #f8fafc !important;
}

/* Mobile category tabs must always fit as three visible options. */
@media (max-width: 575.98px) {
    .sg-home-category-panel .sg-category-tabs {
        width: 100% !important;
        max-width: 100% !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 3px !important;
        margin: 0 0 8px !important;
        padding: 3px !important;
        overflow: hidden !important;
    }

    .sg-home-category-panel .sg-category-tabs button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 46px !important;
        padding: 4px 2px !important;
        border-radius: 6px !important;
        gap: 2px !important;
        font-size: .5rem !important;
        line-height: 1.05 !important;
    }

    .sg-home-category-panel .sg-category-tabs button i {
        font-size: .76rem !important;
        line-height: 1 !important;
    }

    .sg-home-category-panel .sg-category-tabs button span {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: -webkit-box !important;
        overflow: hidden !important;
        text-align: center !important;
        text-overflow: ellipsis !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        word-break: normal !important;
    }
}

body.sg-theme-koyu .sg-order-tracker-head strong,
body.sg-theme-koyu .sg-order-tracker-meta b {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-order-steps article.is-active {
    border-color: rgba(34, 197, 94, .42) !important;
    background: rgba(34, 197, 94, .12) !important;
    color: #bbf7d0 !important;
}

body.sg-theme-koyu .sg-order-tracker-actions .sg-icon-button.is-on {
    border-color: #14b8a6 !important;
    background: rgba(249, 115, 22, .18) !important;
    color: #99f6e4 !important;
}

/* Global header visibility override */
.sg-header,
body:has(.sg-home) .sg-header {
    position: sticky;
    top: 0;
    z-index: 1200;
    background: #0b0f17 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .16);
    backdrop-filter: none !important;
}

.sg-header .navbar {
    min-height: 62px;
}

.sg-header .navbar-brand,
.sg-header .navbar-brand:hover,
.sg-header .navbar-brand:focus,
body:has(.sg-home) .navbar-brand {
    color: #fff !important;
}

.sg-header .sg-logo,
body:has(.sg-home) .sg-logo {
    color: #0b0f17 !important;
    background: #fff !important;
}

.sg-header .sg-icon-button,
.sg-header .btn-outline-secondary,
body:has(.sg-home) .sg-header .btn-outline-secondary {
    border-color: rgba(255, 255, 255, .18) !important;
    color: #f8fafc !important;
    background: rgba(255, 255, 255, .08) !important;
}

.sg-header .sg-icon-button:hover,
.sg-header .sg-icon-button:focus,
.sg-header .btn-outline-secondary:hover,
.sg-header .btn-outline-secondary:focus {
    border-color: rgba(255, 255, 255, .32) !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .14) !important;
}

.sg-header .btn-primary,
body:has(.sg-home) .sg-header .btn-primary {
    border-color: var(--sg-primary) !important;
    color: #fff !important;
    background: var(--sg-primary) !important;
}

body.sg-theme-koyu .sg-page,
body.sg-theme-koyu .sg-section,
body.sg-theme-koyu .sg-home,
body.sg-theme-koyu .sg-account-dashboard-page {
    color: var(--sg-text);
    background: var(--sg-page-bg);
}

body.sg-theme-koyu .sg-main-shell,
body.sg-theme-koyu .sg-panel,
body.sg-theme-koyu .sg-home-block,
body.sg-theme-koyu .sg-home-category-panel,
body.sg-theme-koyu .sg-account-hero-card,
body.sg-theme-koyu .sg-settings-card,
body.sg-theme-koyu .sg-payment-step,
body.sg-theme-koyu .sg-cart-item,
body.sg-theme-koyu .sg-store,
body.sg-theme-koyu .sg-favorite-card,
body.sg-theme-koyu .sg-address-card,
body.sg-theme-koyu .sg-location-card,
body.sg-theme-koyu .sg-auth-card {
    color: var(--sg-text);
    border-color: var(--sg-border);
    background: var(--sg-surface);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .22);
}

body.sg-theme-koyu .form-control,
body.sg-theme-koyu .sg-search,
body.sg-theme-koyu .sg-home-search,
body.sg-theme-koyu .sg-category-tabs,
body.sg-theme-koyu .sg-cart-store-strip,
body.sg-theme-koyu .sg-address-box,
body.sg-theme-koyu .sg-payment-option,
body.sg-theme-koyu .sg-setting-switch {
    color: var(--sg-text);
    border-color: var(--sg-border);
    background: var(--sg-surface-2);
}

body.sg-theme-koyu .form-control::placeholder {
    color: #7d8899;
}

body.sg-theme-koyu .sg-muted-text,
body.sg-theme-koyu small,
body.sg-theme-koyu p,
body.sg-theme-koyu .sg-store-body p,
body.sg-theme-koyu .sg-panel-title span,
body.sg-theme-koyu .sg-account-menu small {
    color: var(--sg-muted);
}

body.sg-theme-koyu .btn-light {
    color: var(--sg-text);
    border-color: var(--sg-border);
    background: var(--sg-surface-2);
}

@media (max-width: 767.98px) {
    body:has(.sg-home) .sg-header {
        position: sticky;
    }
}

/* Customer theme final layer */
body.sg-theme-koyu,
body.sg-theme-koyu .sg-page {
    color: #f8fafc;
    background: #0f1623;
}

body.sg-theme-koyu :is(.sg-main-shell, .sg-panel, .sg-home-block, .sg-home-category-panel, .sg-account-hero-card, .sg-settings-card, .sg-payment-step, .sg-cart-item, .sg-store, .sg-favorite-card, .sg-address-card, .sg-location-card, .sg-auth-card, .sg-result-card, .sg-order-card, .sg-wallet-row, .sg-address-box, .sg-stat-hero, .sg-nearby-shell) {
    color: #f8fafc;
    border-color: #263244;
    background: #151c2a;
}

body.sg-theme-koyu :is(h1, h2, h3, h4, h5, h6, strong, label, dt, dd, .sg-panel-title h1, .sg-panel-title h2, .sg-store-body h3, .sg-cart-item h2, .sg-account-identity h1, .sg-settings-heading strong, .sg-payment-step-title strong) {
    color: #f8fafc;
}

body.sg-theme-koyu :is(p, small, span, .sg-muted-text, .sg-panel-title span, .sg-settings-heading span, .sg-payment-step-title span, .sg-store-body p, .sg-account-identity p, .sg-cart-delivery p, .sg-cart-address span, .sg-order-card p, .sg-order-card span) {
    color: #a7b0c0;
}

body.sg-theme-koyu :is(.form-control, .sg-search, .sg-home-search, .sg-category-tabs, .sg-cart-store-strip, .sg-payment-option, .sg-setting-switch, .sg-account-menu a, .sg-bar-row, .sg-distribution-list > div, .sg-stat-list a, .sg-coupon-form) {
    color: #f8fafc;
    border-color: #263244;
    background: #1b2637;
}

body.sg-theme-koyu .form-control {
    color: #f8fafc;
    caret-color: #f8fafc;
}

body.sg-theme-koyu .form-control::placeholder {
    color: #7d8899;
}

body.sg-theme-koyu :is(.sg-account-menu a:hover, .sg-account-menu a.is-active, .sg-category-tabs button.is-active, .sg-payment-option:has(input:checked), .sg-setting-switch:has(input:checked)) {
    color: #fff;
    border-color: rgba(0, 168, 132, .55);
    background: rgba(0, 168, 132, .14);
}

body.sg-theme-koyu :is(.btn-light, .btn-outline-secondary, .sg-icon-button) {
    color: #f8fafc;
    border-color: #334155;
    background: #1b2637;
}

body.sg-theme-koyu :is(.btn-light:hover, .btn-outline-secondary:hover, .sg-icon-button:hover) {
    color: #fff;
    border-color: #475569;
    background: #263244;
}

body.sg-theme-koyu :is(.sg-footer, .sg-account-mobile-nav) {
    color: #f8fafc;
    border-color: #263244;
    background: #0b0f17;
}

body.sg-theme-koyu .sg-account-mobile-nav :is(a, button) {
    color: #a7b0c0;
}

body.sg-theme-koyu .sg-account-mobile-nav :is(a.is-active, button:hover, a:hover) {
    color: #0f766e;
}

body.sg-theme-koyu :is(.sg-minimum-ok, .sg-cart-minimum.is-complete) {
    color: #bbf7d0;
    border-color: rgba(34, 197, 94, .35);
    background: rgba(22, 101, 52, .22);
}

body.sg-theme-koyu :is(.sg-minimum-warning, .sg-empty-cart) {
    color: #99f6e4;
    border-color: rgba(251, 146, 60, .35);
    background: rgba(124, 45, 18, .22);
}

body.sg-theme-koyu img {
    background: #111827;
}

body.sg-theme-koyu .leaflet-container {
    background: #111827;
}

/* Dark theme contrast hardening */
body.sg-theme-koyu :is(.btn-primary, .sg-header .btn-primary, .sg-floating-cart, .sg-cart-badge, .sg-account-mobile-nav .sg-cart-badge, .sg-setting-switch input:checked, .sg-cart-qty button:hover) {
    color: #fff !important;
    border-color: #14b8a6 !important;
    background: #0f766e !important;
    box-shadow: 0 10px 22px rgba(249, 115, 22, .28);
}

body.sg-theme-koyu :is(.btn-primary *, .sg-header .btn-primary *, .sg-floating-cart *, .sg-cart-badge *, .sg-account-mobile-nav .sg-cart-badge *) {
    color: #fff !important;
}

body.sg-theme-koyu :is(.btn-primary:hover, .btn-primary:focus, .sg-header .btn-primary:hover, .sg-floating-cart:hover) {
    color: #fff !important;
    border-color: #fdba74 !important;
    background: #ea580c !important;
}

body.sg-theme-koyu :is(.btn-light, .btn-outline-secondary, .sg-icon-button, .sg-account-mobile-nav button, .sg-account-mobile-nav a) {
    color: #e5edf8 !important;
    border-color: #334155 !important;
    background: #111827 !important;
}

body.sg-theme-koyu :is(.btn-light:hover, .btn-outline-secondary:hover, .sg-icon-button:hover, .sg-account-mobile-nav button:hover, .sg-account-mobile-nav a:hover) {
    color: #fff !important;
    border-color: #475569 !important;
    background: #1f2937 !important;
}

body.sg-theme-koyu :is(.sg-account-mobile-nav a.is-active, .sg-account-menu a.is-active, .sg-category-tabs button.is-active, .sg-payment-option:has(input:checked), .sg-setting-switch:has(input:checked), .sg-cart-minimum.is-complete) {
    color: #fff !important;
    border-color: rgba(249, 115, 22, .55) !important;
    background: rgba(249, 115, 22, .18) !important;
}

body.sg-theme-koyu :is(.sg-account-mobile-nav a.is-active *, .sg-account-menu a.is-active *, .sg-category-tabs button.is-active *, .sg-payment-option:has(input:checked) *, .sg-setting-switch:has(input:checked) *, .sg-cart-minimum.is-complete *) {
    color: #fff !important;
}

body.sg-theme-koyu :is(.sg-minimum-warning, .sg-empty-cart, .sg-cart-store-strip, .sg-cart-address i, .sg-empty-cart-icon, .sg-menu-badge, .sg-product-flag span) {
    color: #99f6e4 !important;
    border-color: rgba(251, 146, 60, .36) !important;
    background: rgba(124, 45, 18, .28) !important;
}

body.sg-theme-koyu :is(.sg-minimum-warning *, .sg-empty-cart *, .sg-cart-store-strip *, .sg-cart-address i *, .sg-empty-cart-icon *, .sg-menu-badge *, .sg-product-flag span *) {
    color: #99f6e4 !important;
}

body.sg-theme-koyu :is(.sg-minimum-ok, .sg-result-card.is-success) {
    color: #dcfce7 !important;
    border-color: rgba(34, 197, 94, .38) !important;
    background: rgba(20, 83, 45, .32) !important;
}

/* Absolute last store-detail dark guard for installed mobile app. */
body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail,
body.sg-theme-koyu .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white) {
    background: #0b0f17 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div, .sg-menu-category-nav, .sg-menu-category-nav a, .sg-social-links a),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div, .sg-menu-category-nav, .sg-menu-category-nav a, .sg-social-links a) {
    background: #111827 !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(h1, h2, h3, h4, strong, b, dt, dd, summary, label, li, a),
body[data-customer-theme="koyu"] .sg-store-detail :is(h1, h2, h3, h4, strong, b, dt, dd, summary, label, li, a) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(p, small, em, del, .sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small),
body[data-customer-theme="koyu"] .sg-store-detail :is(p, small, em, del, .sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title {
    min-height: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(135deg, #111827, #172033) !important;
    border: 1px solid #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-badge-warning, .sg-badge-warning i),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-badge-warning, .sg-badge-warning i) {
    color: #9a3412 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-badge-success,
body[data-customer-theme="koyu"] .sg-store-detail .sg-badge-success {
    color: #166534 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-badge-info,
body[data-customer-theme="koyu"] .sg-store-detail .sg-badge-info {
    color: #075985 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-badge-money,
body[data-customer-theme="koyu"] .sg-store-detail .sg-badge-money {
    color: #9f1239 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.btn-primary, .btn-primary *, .sg-icon-button-primary, .sg-icon-button-primary *),
body[data-customer-theme="koyu"] .sg-store-detail :is(.btn-primary, .btn-primary *, .sg-icon-button-primary, .sg-icon-button-primary *) {
    color: #fff !important;
}

/* PWA store detail ultimate contrast guard. */
body.sg-theme-koyu .sg-store-detail *,
body[data-customer-theme="koyu"] .sg-store-detail * {
    border-color: #253044;
}

body.sg-theme-koyu .sg-store-detail :is(.container, .row, .col-lg-8, .col-lg-4),
body[data-customer-theme="koyu"] .sg-store-detail :is(.container, .row, .col-lg-8, .col-lg-4) {
    background: transparent !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-section-white, .sg-panel, .sg-menu-category-nav, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-hours-list div, .sg-contact-card dl > div),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-section-white, .sg-panel, .sg-menu-category-nav, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-hours-list div, .sg-contact-card dl > div) {
    background-color: #111827 !important;
    background-image: none !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail .sg-menu-category-nav a,
body[data-customer-theme="koyu"] .sg-store-detail .sg-menu-category-nav a {
    background: #0f172a !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail .sg-menu-category-title,
body.sg-theme-koyu .sg-store-detail .sg-menu-category-title *,
body[data-customer-theme="koyu"] .sg-store-detail .sg-menu-category-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-menu-category-title * {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel-title span, .sg-menu-section summary small, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-contact-card dt),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel-title span, .sg-menu-section summary small, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-contact-card dt) {
    color: #cbd5e1 !important;
}

/* Store detail / PWA dark final pass */
body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail {
    background: #0b0f17 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white) {
    background: #0b0f17 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item) {
    background: #111827 !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-contact-card dl > div, .sg-hours-list div, .sg-social-links a, .sg-menu-category-nav, .sg-menu-category-nav a),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-contact-card dl > div, .sg-hours-list div, .sg-social-links a, .sg-menu-category-nav, .sg-menu-category-nav a) {
    background: #0f172a !important;
    border-color: #253044 !important;
    color: #e5e7eb !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title {
    min-height: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(135deg, #111827, #172033) !important;
    border-color: #253044 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title :is(h1, h2, h3, strong, span),
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title :is(h1, h2, h3, strong, span) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-contact-card strong, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-contact-card strong, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: #f8fafc !important;
}

@media (max-width: 575.98px) {
    body.sg-theme-koyu .sg-store-detail .sg-section,
    body[data-customer-theme="koyu"] .sg-store-detail .sg-section {
        padding: 10px 12px !important;
    }

    body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card),
    body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card) {
        border-radius: 14px !important;
    }
}

/* Login role chooser final layout */
.sg-login-choice-page {
    background: #f6f8fb !important;
}

.sg-login-choice-page .sg-auth-section {
    min-height: calc(100svh - 86px);
    padding: clamp(14px, 3vw, 28px) 0 !important;
}

.sg-login-choice-page .container {
    width: min(980px, calc(100% - 24px));
    max-width: 980px;
}

.sg-login-choice-shell {
    width: 100%;
}

.sg-login-choice-grid {
    align-items: stretch;
}

.sg-login-choice-card {
    min-width: 0;
}

body.sg-theme-koyu .sg-login-choice-page,
body.sg-theme-koyu .sg-login-choice-page .sg-auth-section,
body[data-customer-theme="koyu"] .sg-login-choice-page,
body[data-customer-theme="koyu"] .sg-login-choice-page .sg-auth-section {
    background: #0b0f17 !important;
}

body.sg-theme-koyu :is(.sg-login-choice-head, .sg-login-choice-card),
body[data-customer-theme="koyu"] :is(.sg-login-choice-head, .sg-login-choice-card) {
    background: #111827 !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-login-choice-head h1, .sg-login-choice-card strong),
body[data-customer-theme="koyu"] :is(.sg-login-choice-head h1, .sg-login-choice-card strong) {
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-login-choice-head p, .sg-login-choice-card p, .sg-login-choice-bottom),
body[data-customer-theme="koyu"] :is(.sg-login-choice-head p, .sg-login-choice-card p, .sg-login-choice-bottom) {
    color: #a7b0c0 !important;
}

@media (max-width: 575.98px) {
    .sg-login-choice-page .container {
        width: min(100%, calc(100% - 16px));
    }

    .sg-login-choice-head {
        padding: 14px !important;
        gap: 10px !important;
    }

    .sg-login-choice-head h1 {
        font-size: 1.2rem !important;
        line-height: 1.2;
    }

    .sg-login-choice-head p {
        font-size: .82rem !important;
    }

    .sg-login-choice-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .sg-login-choice-card {
        min-height: 96px !important;
        padding: 12px !important;
    }
}

/* Store detail absolute dark fix: removes white bands in mobile/PWA dark rendering. */
body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail {
    color: #f8fafc !important;
    background: #0b0f17 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-section, .sg-section-white),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-section, .sg-section-white) {
    color: #f8fafc !important;
    background: #0b0f17 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-contact-card dl > div, .sg-hours-list div, .sg-social-links a, .sg-menu-category-nav, .sg-menu-category-nav a),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-contact-card dl > div, .sg-hours-list div, .sg-social-links a, .sg-menu-category-nav, .sg-menu-category-nav a) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #111827 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title {
    color: #f8fafc !important;
    border-color: #334155 !important;
    background: linear-gradient(180deg, #1e293b 0%, #151c2a 100%) !important;
    box-shadow: inset 3px 0 0 #14b8a6 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: #f8fafc !important;
}

@media (prefers-color-scheme: dark) {
    body.sg-theme-sistem .sg-store-detail,
    body.sg-theme-sistem .sg-store-detail :is(.sg-section, .sg-section-white) {
        color: #f8fafc !important;
        background: #0b0f17 !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item) {
        color: #f8fafc !important;
        border-color: #263244 !important;
        background: #151c2a !important;
        box-shadow: none !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(.sg-contact-card dl > div, .sg-hours-list div, .sg-social-links a, .sg-menu-category-nav, .sg-menu-category-nav a) {
        color: #f8fafc !important;
        border-color: #263244 !important;
        background: #111827 !important;
    }

    body.sg-theme-sistem .sg-store-detail .sg-panel-title {
        color: #f8fafc !important;
        border-color: #334155 !important;
        background: linear-gradient(180deg, #1e293b 0%, #151c2a 100%) !important;
        box-shadow: inset 3px 0 0 #14b8a6 !important;
    }
}

.sg-login-choice-shell {
    display: grid;
    gap: 14px;
    width: min(980px, 100%);
    margin-inline: auto;
}

.sg-login-choice-head {
    display: grid;
    gap: 14px;
    position: relative;
    padding: 16px;
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(15, 23, 42, .08);
}

.sg-login-choice-head > div {
    display: grid;
    gap: 5px;
}

.sg-login-choice-head > div > span {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-login-choice-head h1 {
    margin: 0;
    color: var(--sg-ink);
    font-size: clamp(1.35rem, 3vw, 2.25rem);
    line-height: 1.08;
}

.sg-login-choice-head p {
    max-width: 620px;
    margin: 0;
    color: var(--sg-muted);
    font-size: .92rem;
    line-height: 1.45;
}

.sg-login-choice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.sg-login-choice-card {
    position: relative;
    min-width: 0;
    min-height: 220px;
    display: grid;
    align-content: start;
    gap: 10px;
    padding: 16px;
    overflow: hidden;
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    color: var(--sg-ink);
    background: #fff;
    text-decoration: none;
    box-shadow: 0 16px 40px rgba(15, 23, 42, .07);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.sg-login-choice-card::after {
    content: "";
    position: absolute;
    inset: auto -28px -34px auto;
    width: 110px;
    height: 110px;
    border-radius: 999px;
    background: rgba(0, 168, 132, .1);
}

.sg-login-choice-card:hover,
.sg-login-choice-card:focus-visible {
    transform: translateY(-3px);
    border-color: rgba(0, 168, 132, .45);
    box-shadow: 0 20px 48px rgba(15, 23, 42, .12);
}

.sg-login-choice-icon {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #fff;
    background: #0f766e;
    font-size: 1.22rem;
}

.sg-login-choice-card.is-business .sg-login-choice-icon {
    background: #0f766e;
}

.sg-login-choice-card.is-courier .sg-login-choice-icon {
    background: #2563eb;
}

.sg-login-choice-card > strong {
    color: var(--sg-ink);
    font-size: 1.08rem;
    line-height: 1.15;
}

.sg-login-choice-card > p {
    margin: 0;
    color: var(--sg-muted);
    font-size: .84rem;
    line-height: 1.42;
}

.sg-login-choice-card > em {
    position: relative;
    z-index: 1;
    align-self: end;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: auto;
    color: var(--sg-primary);
    font-size: .8rem;
    font-style: normal;
    font-weight: 900;
}

.sg-login-choice-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--sg-muted);
    font-size: .82rem;
}

.sg-login-choice-bottom a {
    color: var(--sg-primary);
    font-weight: 900;
    text-decoration: none;
}

body.sg-theme-koyu :is(.sg-login-choice-head, .sg-login-choice-card) {
    color: var(--sg-text) !important;
    border-color: var(--sg-border) !important;
    background: var(--sg-surface) !important;
}

body.sg-theme-koyu :is(.sg-login-choice-head h1, .sg-login-choice-card > strong) {
    color: var(--sg-text) !important;
}

body.sg-theme-koyu :is(.sg-login-choice-head p, .sg-login-choice-card > p, .sg-login-choice-bottom) {
    color: var(--sg-muted) !important;
}

@media (max-width: 767.98px) {
    .sg-login-choice-shell {
        gap: 10px;
    }

    .sg-login-choice-head {
        padding: 12px;
        border-radius: 10px;
    }

    .sg-login-choice-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .sg-login-choice-card {
        min-height: 0;
        grid-template-columns: 44px minmax(0, 1fr);
        grid-template-areas:
            "icon title"
            "icon text"
            "icon action";
        align-items: center;
        gap: 5px 10px;
        padding: 12px;
        border-radius: 10px;
    }

    .sg-login-choice-icon {
        grid-area: icon;
    }

    .sg-login-choice-card > strong {
        grid-area: title;
        font-size: .98rem;
    }

    .sg-login-choice-card > p {
        grid-area: text;
        font-size: .76rem;
        line-height: 1.28;
    }

    .sg-login-choice-card > em {
        grid-area: action;
        margin-top: 0;
        font-size: .74rem;
    }
}

body.sg-theme-koyu :is(.sg-minimum-ok *, .sg-result-card.is-success *) {
    color: #dcfce7 !important;
}

body.sg-theme-koyu :is(.sg-header .btn-sm span:not(.sg-cart-badge), .sg-header .btn-sm i) {
    color: inherit !important;
}

body.sg-theme-koyu :is(.sg-cart-badge, .sg-account-mobile-nav .sg-cart-badge) {
    min-width: 18px;
    color: #fff !important;
    font-weight: 800;
}

/* Cart page final overrides */
.sg-cart-main-panel,
.sg-cart-side {
    display: grid;
    gap: 2px;
}

.sg-cart-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
}

.sg-cart-store-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-cart-store-strip span {
    display: block;
    color: #134e4a;
    font-size: .62rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-cart-store-strip strong {
    display: block;
    color: var(--sg-text);
    font-size: .82rem;
}

.sg-empty-cart-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: 1.35rem;
}

.sg-cart-item {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px;
}

.sg-cart-item-image {
    width: 62px;
    height: 62px;
    object-fit: cover;
    border-radius: 8px;
    background: #f8fafc;
}

.sg-cart-item-body {
    min-width: 0;
}

.sg-cart-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 2px;
}

.sg-cart-item-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 19px;
    padding: 1px 6px;
    border-radius: 6px;
    color: #475467;
    background: #f8fafc;
    font-size: .72rem;
    font-weight: 800;
}

.sg-cart-options {
    display: grid;
    gap: 2px;
    margin-top: 2px;
}

.sg-cart-options span {
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.25;
}

.sg-cart-item-actions {
    min-width: 96px;
    align-self: stretch;
    display: grid;
    justify-items: end;
    align-content: center;
    gap: 2px;
}

.sg-cart-item-actions strong {
    color: var(--sg-text);
    font-size: .95rem;
    font-weight: 850;
    white-space: nowrap;
}

.sg-cart-qty {
    display: inline-grid;
    grid-template-columns: 28px 28px 28px;
    align-items: center;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.sg-cart-qty form,
.sg-cart-item-actions form {
    margin: 0;
}

.sg-cart-qty button,
.sg-cart-remove {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: #fff;
    color: var(--sg-text);
    font-size: .9rem;
}

.sg-cart-qty span {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-inline: 1px solid var(--sg-border);
    font-size: .78rem;
    font-weight: 900;
}

.sg-cart-remove {
    border: 1px solid #fee2e2;
    border-radius: 8px;
    color: #b42318;
}

.sg-cart-minimum {
    display: grid;
    gap: 2px;
    margin-bottom: 2px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-cart-minimum.is-complete {
    border-color: #abefc6;
    background: #ecfdf3;
}

.sg-cart-minimum strong,
.sg-cart-minimum span {
    display: block;
}

.sg-cart-minimum strong {
    color: var(--sg-text);
    font-size: .82rem;
}

.sg-cart-minimum span {
    color: #667085;
    font-size: .74rem;
    font-weight: 750;
}

.sg-cart-progress {
    height: 6px;
    border-radius: 999px;
    background: rgba(0, 168, 132, .15);
    overflow: hidden;
}

.sg-cart-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--sg-primary);
}

.sg-cart-minimum.is-complete .sg-cart-progress {
    background: #d1fadf;
}

.sg-cart-minimum.is-complete .sg-cart-progress span {
    background: #12b76a;
}

.sg-cart-summary .sg-discount {
    color: #039855;
}

.sg-cart-summary .sg-cart-total {
    color: var(--sg-primary);
    font-size: 1rem;
}

.sg-cart-delivery {
    display: grid;
    gap: 2px;
}

.sg-cart-delivery p {
    margin: 0;
    color: var(--sg-muted);
    font-size: .8rem;
}

.sg-cart-address {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 2px;
    align-items: start;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-cart-address i {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--sg-primary);
    background: #f0fdfa;
}

.sg-cart-address strong,
.sg-cart-address span {
    display: block;
}

.sg-cart-address strong {
    font-size: .84rem;
}

.sg-cart-address span {
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

@media (max-width: 767.98px) {
    .sg-cart-title-row {
        align-items: flex-start;
    }

    .sg-cart-title-row .btn {
        padding-inline: 4px;
        font-size: .72rem;
        white-space: nowrap;
    }

    .sg-cart-item {
        display: grid;
        grid-template-columns: 52px minmax(0, 1fr) 52px;
        gap: 2px;
        align-items: center;
        padding: 2px;
    }

    .sg-cart-item-image {
        width: 52px;
        height: 52px;
    }

    .sg-cart-item-actions {
        min-width: 52px;
        display: grid;
        flex-direction: initial;
        align-items: initial;
        justify-items: end;
        gap: 2px;
    }

    .sg-cart-item-actions strong {
        font-size: .8rem;
    }

    .sg-cart-qty {
        grid-template-columns: 24px 24px 24px;
    }

    .sg-cart-qty button,
    .sg-cart-remove,
    .sg-cart-qty span {
        width: 24px;
        height: 24px;
    }

    .sg-cart-item h2 {
        font-size: .82rem;
    }

    .sg-cart-item p {
        margin-top: 2px;
        font-size: .72rem;
        line-height: 1.25;
    }

    .sg-cart-item-meta {
        margin-top: 2px;
        gap: 2px;
    }

    .sg-cart-item-meta span {
        min-height: 20px;
        padding: 1px 2px;
        font-size: .66rem;
    }

    .sg-scheduled-order-fields {
        grid-template-columns: 1fr;
    }
}

.sg-header,
body:has(.sg-home) .sg-header {
    position: sticky;
    top: 0;
    z-index: 1200;
    background: #0b0f17 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .16);
    backdrop-filter: none !important;
}

.sg-header .navbar {
    min-height: 62px;
}

.sg-header .navbar-brand,
.sg-header .navbar-brand:hover,
.sg-header .navbar-brand:focus,
body:has(.sg-home) .navbar-brand {
    color: #fff !important;
}

.sg-header .sg-logo,
body:has(.sg-home) .sg-logo {
    color: #0b0f17 !important;
    background: #fff !important;
}

.sg-header .sg-icon-button,
.sg-header .btn-outline-secondary,
body:has(.sg-home) .sg-header .btn-outline-secondary {
    border-color: rgba(255, 255, 255, .18) !important;
    color: #f8fafc !important;
    background: rgba(255, 255, 255, .08) !important;
}

.sg-header .sg-icon-button:hover,
.sg-header .sg-icon-button:focus,
.sg-header .btn-outline-secondary:hover,
.sg-header .btn-outline-secondary:focus {
    border-color: rgba(255, 255, 255, .32) !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .14) !important;
}

.sg-header .btn-primary,
body:has(.sg-home) .sg-header .btn-primary {
    border-color: var(--sg-primary) !important;
    color: #fff !important;
    background: var(--sg-primary) !important;
}

/* Global header visibility override */
.sg-header,
body:has(.sg-home) .sg-header {
    position: sticky;
    top: 0;
    z-index: 1200;
    background: #0b0f17 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .16);
    backdrop-filter: none !important;
}

.sg-header .navbar {
    min-height: 62px;
}

.sg-header .navbar-brand,
.sg-header .navbar-brand:hover,
.sg-header .navbar-brand:focus,
body:has(.sg-home) .navbar-brand {
    color: #fff !important;
}

.sg-header .sg-logo,
body:has(.sg-home) .sg-logo {
    color: #0b0f17 !important;
    background: #fff !important;
}

.sg-header .sg-icon-button,
.sg-header .btn-outline-secondary,
body:has(.sg-home) .sg-header .btn-outline-secondary {
    border-color: rgba(255, 255, 255, .18) !important;
    color: #f8fafc !important;
    background: rgba(255, 255, 255, .08) !important;
}

.sg-header .sg-icon-button:hover,
.sg-header .sg-icon-button:focus,
.sg-header .btn-outline-secondary:hover,
.sg-header .btn-outline-secondary:focus {
    border-color: rgba(255, 255, 255, .32) !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .14) !important;
}

.sg-header .btn-primary,
body:has(.sg-home) .sg-header .btn-primary {
    border-color: var(--sg-primary) !important;
    color: #fff !important;
    background: var(--sg-primary) !important;
}

@media (max-width: 767.98px) {
    body:has(.sg-home) .sg-header {
        position: sticky;
    }
}

/* Header dark band - final override */
.sg-header,
body:has(.sg-home) .sg-header {
    background: #0b0f17;
    border-bottom-color: rgba(255, 255, 255, .08);
    box-shadow: 0 8px 22px rgba(15, 23, 42, .12);
    backdrop-filter: none;
}

.navbar-brand,
.navbar-brand:hover,
.navbar-brand:focus,
body:has(.sg-home) .navbar-brand {
    color: #fff;
}

.sg-logo,
body:has(.sg-home) .sg-logo {
    color: #0b0f17;
    background: #fff;
}

.sg-header .sg-icon-button,
.sg-header .btn-outline-secondary,
body:has(.sg-home) .sg-header .btn-outline-secondary {
    border-color: rgba(255, 255, 255, .18);
    color: #f8fafc;
    background: rgba(255, 255, 255, .08);
}

.sg-header .sg-icon-button:hover,
.sg-header .sg-icon-button:focus,
.sg-header .btn-outline-secondary:hover,
.sg-header .btn-outline-secondary:focus {
    border-color: rgba(255, 255, 255, .32);
    color: #fff;
    background: rgba(255, 255, 255, .14);
}

.sg-header .btn-primary,
body:has(.sg-home) .sg-header .btn-primary {
    border-color: var(--sg-primary);
    color: #fff;
    background: var(--sg-primary);
}

/* Payment page */
.sg-payment-panel {
    display: grid;
    gap: 2px;
}

.sg-payment-form {
    display: grid;
    gap: 2px;
}

.sg-payment-step {
    display: grid;
    gap: 2px;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-payment-step-title {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 2px;
    align-items: center;
}

.sg-payment-step-title i {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--sg-primary);
    background: #f0fdfa;
}

.sg-payment-step-title strong,
.sg-payment-step-title span {
    display: block;
}

.sg-payment-step-title strong {
    font-size: .92rem;
}

.sg-payment-step-title span {
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

.sg-payment-options {
    display: grid;
    gap: 2px;
}

.sg-payment-options-two {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.sg-payment-option {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 2px;
    align-items: start;
    min-height: 44px;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
    cursor: pointer;
}

.sg-payment-option input {
    margin-top: 2px;
    accent-color: var(--sg-primary);
}

.sg-payment-option span,
.sg-payment-option strong,
.sg-payment-option small {
    display: block;
    min-width: 0;
}

.sg-payment-option strong {
    font-size: .82rem;
}

.sg-payment-option small {
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.35;
}

.sg-payment-option:has(input:checked) {
    border-color: rgba(0, 168, 132, .42);
    background: #f0fdfa;
    box-shadow: inset 0 0 0 1px rgba(0, 168, 132, .14);
}

.sg-payment-option.is-selected {
    border-color: rgba(0, 168, 132, .42);
    background: #f0fdfa;
    box-shadow: inset 0 0 0 1px rgba(0, 168, 132, .14);
}

.sg-payment-option.is-disabled,
.sg-payment-inline-input.is-disabled {
    opacity: .58;
    cursor: not-allowed;
}

.sg-payment-option.is-disabled input {
    cursor: not-allowed;
}

.sg-payment-inline-input {
    display: grid;
    gap: 2px;
}

.sg-payment-inline-input span {
    color: var(--sg-muted);
    font-size: .74rem;
    font-weight: 750;
}

.sg-payment-empty {
    display: grid;
    justify-items: start;
    gap: 7px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-payment-empty strong {
    font-size: .84rem;
}

.sg-payment-empty p {
    margin: 0;
    color: #9a3412;
    font-size: .76rem;
    line-height: 1.4;
}

.sg-tip-option {
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    min-height: 38px;
    padding: 2px;
}

.sg-tip-option span {
    font-size: .8rem;
    font-weight: 850;
}

@media (max-width: 767.98px) {
    .sg-payment-step {
        padding: 2px;
    }

    .sg-payment-options-two {
        grid-template-columns: 1fr;
    }

    .sg-payment-step-title {
        grid-template-columns: 32px minmax(0, 1fr);
        gap: 2px;
    }

    .sg-payment-step-title i {
        width: 32px;
        height: 32px;
    }
}

/* Header dark band */
.sg-header {
    background: #0b0f17;
    border-bottom-color: rgba(255, 255, 255, .08);
    box-shadow: 0 8px 22px rgba(15, 23, 42, .12);
    backdrop-filter: none;
}

.navbar-brand {
    color: #fff;
}

.navbar-brand:hover,
.navbar-brand:focus {
    color: #fff;
}

.sg-logo {
    color: #0b0f17;
    background: #fff;
}

.sg-header .sg-icon-button,
.sg-header .btn-outline-secondary {
    border-color: rgba(255, 255, 255, .18);
    color: #f8fafc;
    background: rgba(255, 255, 255, .08);
}

.sg-header .sg-icon-button:hover,
.sg-header .sg-icon-button:focus,
.sg-header .btn-outline-secondary:hover,
.sg-header .btn-outline-secondary:focus {
    border-color: rgba(255, 255, 255, .32);
    color: #fff;
    background: rgba(255, 255, 255, .14);
}

.sg-header .btn-primary {
    border-color: var(--sg-primary);
    color: #fff;
    background: var(--sg-primary);
}

@media (max-width: 767.98px) {
    body:has(.sg-home) .sg-header {
        background: #0b0f17;
    }

    body:has(.sg-home) .sg-logo {
        color: #0b0f17;
        background: #fff;
    }

    body:has(.sg-home) .sg-header .btn-primary {
        border-color: var(--sg-primary);
        color: #fff;
        background: var(--sg-primary);
    }
}

/* Cart page polish */
.sg-cart-main-panel,
.sg-cart-side {
    display: grid;
    gap: 2px;
}

.sg-cart-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
}

.sg-cart-store-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-cart-store-strip span {
    display: block;
    color: #134e4a;
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-cart-store-strip strong {
    display: block;
    color: var(--sg-text);
    font-size: .9rem;
}

.sg-cart-store-strip small {
    flex: 0 0 auto;
    color: #9a3412;
    font-weight: 850;
}

.sg-empty-cart-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: 1.35rem;
}

.sg-cart-item {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px;
}

.sg-cart-item-image {
    width: 76px;
    height: 76px;
    object-fit: cover;
    border-radius: 8px;
    background: #f8fafc;
}

.sg-cart-item-body {
    min-width: 0;
}

.sg-cart-item-body h2,
.sg-cart-item-body p {
    overflow-wrap: anywhere;
}

.sg-cart-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 2px;
}

.sg-cart-item-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 1px 2px;
    border-radius: 6px;
    color: #475467;
    background: #f8fafc;
    font-size: .66rem;
    font-weight: 700;
}

.sg-cart-item-actions {
    min-width: 78px;
    align-self: stretch;
    display: grid;
    justify-items: end;
    align-content: center;
    gap: 2px;
}

.sg-cart-item-actions strong {
    color: var(--sg-text);
    font-size: .84rem;
    font-weight: 800;
    white-space: nowrap;
}

.sg-cart-qty {
    display: inline-grid;
    grid-template-columns: 24px 24px 24px;
    align-items: center;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.sg-cart-qty form,
.sg-cart-item-actions form {
    margin: 0;
}

.sg-cart-qty button,
.sg-cart-remove {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: #fff;
    color: var(--sg-text);
    font-size: .9rem;
}

.sg-cart-qty span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-inline: 1px solid var(--sg-border);
    font-size: .78rem;
    font-weight: 900;
}

.sg-cart-remove {
    border: 1px solid #fee2e2;
    border-radius: 8px;
    color: #b42318;
}

.sg-cart-minimum {
    display: grid;
    gap: 2px;
    margin-bottom: 2px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-cart-minimum.is-complete {
    border-color: #abefc6;
    background: #ecfdf3;
}

.sg-cart-minimum strong,
.sg-cart-minimum span {
    display: block;
}

.sg-cart-minimum strong {
    color: var(--sg-text);
    font-size: .82rem;
}

.sg-cart-minimum span {
    color: #667085;
    font-size: .74rem;
    font-weight: 750;
}

.sg-cart-progress {
    height: 6px;
    border-radius: 999px;
    background: rgba(0, 168, 132, .15);
    overflow: hidden;
}

.sg-cart-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--sg-primary);
}

.sg-cart-minimum.is-complete .sg-cart-progress {
    background: #d1fadf;
}

.sg-cart-minimum.is-complete .sg-cart-progress span {
    background: #12b76a;
}

.sg-cart-summary .sg-discount {
    color: #039855;
}

.sg-cart-summary .sg-cart-total {
    color: var(--sg-primary);
    font-size: 1rem;
}

.sg-cart-delivery {
    display: grid;
    gap: 2px;
}

.sg-cart-delivery p {
    margin: 0;
    color: var(--sg-muted);
    font-size: .8rem;
}

.sg-cart-address {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 2px;
    align-items: start;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-cart-address i {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--sg-primary);
    background: #f0fdfa;
}

.sg-cart-address strong,
.sg-cart-address span {
    display: block;
}

.sg-cart-address strong {
    font-size: .84rem;
}

.sg-cart-address span {
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

@media (max-width: 767.98px) {
    .sg-cart-title-row {
        align-items: flex-start;
    }

    .sg-cart-title-row .btn {
        padding-inline: 2px;
        font-size: .72rem;
        white-space: nowrap;
    }

    .sg-cart-item {
        display: grid;
        grid-template-columns: 64px minmax(0, 1fr) 58px;
        gap: 2px;
        align-items: center;
        padding: 2px;
    }

    .sg-cart-item-image {
        width: 64px;
        height: 64px;
    }

    .sg-cart-item-actions {
        min-width: 58px;
        display: grid;
        flex-direction: initial;
        align-items: initial;
        justify-items: end;
        gap: 2px;
    }

    .sg-cart-item-actions strong {
        font-size: .8rem;
    }

    .sg-cart-qty {
        grid-template-columns: 24px 24px 24px;
    }

    .sg-cart-qty button,
    .sg-cart-remove,
    .sg-cart-qty span {
        width: 24px;
        height: 24px;
    }

    .sg-cart-item h2 {
        font-size: .82rem;
    }

    .sg-cart-item p {
        margin-top: 2px;
        font-size: .72rem;
        line-height: 1.25;
    }

    .sg-cart-item-meta {
        margin-top: 2px;
        gap: 2px;
    }

    .sg-cart-item-meta span {
        min-height: 20px;
        padding: 1px 2px;
        font-size: .66rem;
    }
}

* {
    box-sizing: border-box;
}

img,
svg {
    max-width: 100%;
}

html {
    font-family: "Segoe UI", Arial, Helvetica, sans-serif;
    color: var(--sg-text);
    background: #fff;
    font-size: 15px;
    overflow-x: hidden;
}

body {
    margin: 0;
    min-height: 100vh;
    color: var(--sg-text);
    background: var(--sg-page-bg);
    font-size: .95rem;
    line-height: 1.5;
    overflow-x: hidden;
}

.sg-page h1,
.sg-page h2,
.sg-page h3,
.sg-page strong {
    font-weight: 650;
}

.sg-page .btn,
.sg-page button,
.sg-header .btn {
    font-weight: 650;
}

.btn {
    gap: 2px;
}

.btn-sm {
    gap: 2px;
}

.btn > .bi:only-child,
.sg-icon-button > .bi:only-child {
    margin: 0;
}

.sg-header .btn-sm {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    min-height: 34px;
    padding: 7px 10px;
    white-space: nowrap;
}

.sg-header {
    position: sticky;
    top: 0;
    z-index: 10;
    background: rgba(255, 255, 255, .94);
    border-bottom: 1px solid var(--sg-border);
    backdrop-filter: blur(12px);
}

.navbar {
    min-height: 62px;
    display: flex;
    align-items: center;
}

.navbar .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.navbar-brand {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: var(--sg-text);
    text-decoration: none;
}

.sg-logo {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: var(--sg-primary);
    font-weight: 750;
}

.sg-page {
    min-height: 0;
    overflow-x: hidden;
}

.sg-main-shell {
    width: 100%;
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.sg-hero-shell {
    background: rgba(255, 255, 255, .94);
}

.sg-nearby-shell {
    max-width: 1040px;
    margin-inline: auto;
}

.sg-hero {
    padding: 34px 0 28px;
    background: linear-gradient(180deg, #fff 0%, #f0fdfa 100%);
}

.sg-kicker {
    display: inline-flex;
    margin-bottom: 10px;
    color: var(--sg-primary);
    font-size: .7rem;
    font-weight: 700;
    text-transform: uppercase;
}

.sg-hero h1 {
    max-width: 680px;
    margin: 0;
    font-size: clamp(1.45rem, 2.7vw, 2.15rem);
    font-weight: 650;
    line-height: 1.16;
    letter-spacing: 0;
}

.sg-hero p {
    max-width: 590px;
    margin: 14px 0 0;
    color: var(--sg-muted);
    font-size: .95rem;
    line-height: 1.52;
}

.sg-search {
    display: flex;
    gap: 2px;
    max-width: 600px;
    margin-top: 22px;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
}

.sg-search .btn {
    min-width: 96px;
}

.sg-home-location {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2px;
    max-width: 600px;
    margin-top: 12px;
    padding: 12px;
    border: 1px solid rgba(0, 168, 132, .22);
    border-radius: 10px;
    background: #f0fdfa;
}

.sg-home-location > div {
    display: flex;
    align-items: center;
    gap: 2px;
    min-width: 0;
}

.sg-home-location i {
    color: var(--sg-primary);
}

.sg-home-location strong,
.sg-home-location small {
    display: block;
}

.sg-home-location strong {
    color: var(--sg-ink);
    font-size: .88rem;
}

.sg-home-location small {
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

.sg-nearby-page {
    min-height: calc(100vh - 62px);
}

.sg-nearby-title {
    margin: 0;
}

.sg-nearby-title h1 {
    margin: 5px;
    font-size: clamp(1rem, 2vw, 1.3rem);
    line-height: 1.2;
}

.sg-nearby-searchbar {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    margin-bottom: 10px;
}

.sg-nearby-searchbar .sg-page-nav {
    margin: 0;
}

.sg-nearby-topbar {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    gap: 2px;
    align-items: stretch;
    margin-bottom: 8px;
}

.sg-nearby-location {
    width: 100%;
    max-width: none;
    margin-top: 0;
    padding: 8px 10px;
    border-radius: 8px;
    box-shadow: none;
}

.sg-nearby-location > div {
    flex: 1 1 auto;
    min-width: 0;
}

.sg-nearby-location span {
    min-width: 0;
}

.sg-nearby-location strong {
    font-size: .76rem;
}

.sg-nearby-location small {
    display: -webkit-box;
    overflow: hidden;
    font-size: .68rem;
    line-height: 1.25;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.sg-nearby-location .btn {
    min-height: 30px;
    padding: 5px 8px;
    font-size: .72rem;
}

.sg-nearby-search {
    max-width: none;
    margin-top: 10px;
}

.sg-nearby-search-panel {
    margin: 0 0 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.sg-nearby-search-panel summary {
    min-height: 36px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 7px 8px 7px 11px;
    cursor: pointer;
    list-style: none;
    color: var(--sg-text);
    font-size: .82rem;
    font-weight: 750;
}

.sg-nearby-search-panel summary::-webkit-details-marker {
    display: none;
}

.sg-nearby-search-panel summary span {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    min-width: 0;
}

.sg-search-summary-meta {
    flex: 0 0 auto;
    color: var(--sg-muted);
}

.sg-search-summary-meta .bi-search {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    color: #fff;
    background: var(--sg-primary);
    font-size: .9rem;
}

.sg-nearby-search-panel summary small {
    max-width: 45%;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-nearby-search-panel[open] summary {
    border-bottom: 1px solid var(--sg-border);
}

.sg-nearby-search-panel .sg-search {
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: #f8fafc;
}

.sg-nearby-count {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    margin: 14px 0;
    color: var(--sg-muted);
    font-size: .84rem;
}

.sg-nearby-count strong {
    color: var(--sg-text);
    font-size: .9rem;
}

.sg-status-card,
.sg-feature,
.sg-store,
.sg-product,
.sg-hero-store {
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .07);
}

.sg-status-card {
    padding: 26px;
}

.sg-status-card span,
.sg-section-title span {
    display: block;
    margin-bottom: 8px;
    color: var(--sg-primary);
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
}

.sg-status-card strong {
    display: block;
    font-size: 1.04rem;
    font-weight: 650;
}

.sg-status-card small {
    display: block;
    margin-top: 10px;
    color: var(--sg-muted);
    line-height: 1.5;
}

.sg-section {
    padding: 26px 0 38px;
    background: var(--sg-soft);
    overflow-x: hidden;
}

.sg-section-white {
    background: #fff;
}

.sg-section-title {
    margin-bottom: 18px;
}

.sg-page-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    margin-bottom: 8px;
}

.sg-back-link {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    min-height: 34px;
    margin-bottom: 0;
    padding: 7px 10px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    background: #fff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .05);
    font-size: .82rem;
    font-weight: 650;
    line-height: 1;
    text-decoration: none;
}

.sg-back-link:hover {
    border-color: #99f6e4;
    color: #134e4a;
    background: #f0fdfa;
}

.sg-back-link i {
    font-size: .98rem;
    line-height: 1;
}

.sg-back-link .sg-icon-link-text {
    font-size: .82rem;
    line-height: 1;
}

.sg-section-title h2 {
    margin: 0;
    font-size: 1.12rem;
    line-height: 1.25;
}

.sg-feature {
    min-height: 126px;
    padding: 16px;
}

.sg-category {
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    min-height: 118px;
}

.sg-category img {
    width: 66px;
    height: 66px;
    border-radius: 8px;
    object-fit: cover;
    background: #eef2f7;
}

.sg-feature h3 {
    margin: 0 0 10px;
    font-size: .92rem;
}

.sg-feature p {
    margin: 0;
    color: var(--sg-muted);
    line-height: 1.55;
}

.sg-hero-store {
    overflow: hidden;
    display: block;
    color: inherit;
    text-decoration: none;
}

.sg-hero-store img {
    display: block;
    width: 100%;
    height: 210px;
    object-fit: cover;
}

.sg-hero-store div {
    padding: 16px;
}

.sg-hero-store strong {
    display: block;
    font-size: 1rem;
}

.sg-hero-store small {
    display: block;
    margin-top: 6px;
    color: var(--sg-muted);
    line-height: 1.5;
}

.sg-store {
    display: grid;
    grid-template-columns: 148px minmax(0, 1fr);
    overflow: hidden;
    min-height: 146px;
    color: inherit;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease;
}

.sg-store:hover,
.sg-product:hover,
.sg-hero-store:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 42px rgba(15, 23, 42, .11);
}

.sg-store > img {
    width: 100%;
    height: 100%;
    min-height: 146px;
    object-fit: cover;
}

.sg-store-body {
    padding: 14px;
    min-width: 0;
}

.sg-store h3,
.sg-product h3 {
    margin: 0 0 6px;
    font-size: .9rem;
    line-height: 1.25;
}

.sg-store p,
.sg-product p {
    margin: 0;
    color: var(--sg-muted);
    line-height: 1.48;
    font-size: .8rem;
}

.sg-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 14px;
}

.sg-meta span {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    min-height: 24px;
    padding: 4px 7px;
    border-radius: 6px;
    background: #f0fdfa;
    color: #9a3412;
    font-size: .68rem;
    font-weight: 650;
}

.sg-product {
    overflow: hidden;
    min-height: 100%;
    display: block;
    color: inherit;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease;
}

.sg-product img {
    display: block;
    width: 100%;
    height: 132px;
    object-fit: cover;
    background: #eef2f7;
}

.sg-product div {
    padding: 14px;
}

.sg-product small {
    display: block;
    margin-bottom: 8px;
    color: var(--sg-primary);
    font-weight: 650;
}

.sg-price {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-top: 12px;
}

.sg-price del {
    color: #94a3b8;
    font-size: .68rem;
    font-style: italic;
}

.sg-price strong {
    color: #111827;
    font-size: .88rem;
}

.sg-price span {
    padding: 3px 6px;
    border-radius: 5px;
    background: #dcfce7;
    color: #166534;
    font-size: .68rem;
    font-weight: 650;
}

.sg-home {
    padding: 22px 0 36px;
    background:
        radial-gradient(circle at 14% 4%, rgba(0, 168, 132, .12), transparent 30%),
        linear-gradient(180deg, #fff 0%, #f0fdfa 42%, #f7f9fc 100%);
}

.sg-home-shell {
    max-width: 1120px;
    margin-inline: auto;
    padding: 18px;
}

.sg-home-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: 18px;
    align-items: end;
    margin-bottom: 16px;
}

.sg-home-copy {
    position: relative;
    overflow: hidden;
    padding: 16px 18px;
    border: 1px solid rgba(0, 168, 132, .16);
    border-radius: 12px;
    background:
        linear-gradient(135deg, rgba(255, 247, 237, .96) 0%, rgba(240, 253, 244, .82) 54%, rgba(239, 246, 255, .90) 100%);
    box-shadow: 0 12px 28px rgba(16, 24, 40, .06);
}

.sg-home-copy::after {
    content: "";
    position: absolute;
    right: -44px;
    top: -54px;
    width: 150px;
    height: 150px;
    border-radius: 999px;
    background: rgba(0, 168, 132, .13);
    pointer-events: none;
}

.sg-home-copy > * {
    position: relative;
    z-index: 1;
}

.sg-home-head span,
.sg-home-block-title span,
.sg-promo-slide > span {
    display: block;
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 750;
    text-transform: uppercase;
}

.sg-home-head h1 {
    max-width: 620px;
    margin: 4px 0 0;
    font-size: clamp(1.25rem, 2.4vw, 1.9rem);
    line-height: 1.16;
}

.sg-home-head p {
    max-width: 560px;
    margin: 8px 0 0;
    color: var(--sg-muted);
    font-size: .9rem;
    line-height: 1.45;
}

.sg-home-search {
    min-height: 46px;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: center;
    gap: 2px;
    padding: 0 13px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
}

.sg-home-search i {
    color: var(--sg-primary);
    font-size: 1rem;
}

.sg-home-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: var(--sg-text);
    background: transparent;
    font-size: .88rem;
    font-weight: 600;
}

.sg-mobile-welcome {
    display: none;
}

.sg-mobile-status-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px;
    margin-top: 8px;
}

.sg-mobile-status-grid a {
    min-width: 0;
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    gap: 2px;
    padding: 2px;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 8px;
    color: #fff;
    background: rgba(255, 255, 255, .12);
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.22;
    text-decoration: none;
    text-transform: none;
}

.sg-mobile-status-grid a:first-child {
    grid-template-columns: 18px minmax(0, 1fr);
}

.sg-mobile-status-grid a:last-child {
    grid-template-columns: 18px auto;
    justify-self: end;
    min-width: 0;
    padding-inline: 2px;
}

.sg-mobile-status-grid a:last-child span {
    max-width: 58px;
    white-space: nowrap;
}

.sg-mobile-status-grid i {
    font-size: .95rem;
    line-height: 1;
}

.sg-mobile-status-grid span {
    min-width: 0;
    text-transform: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.sg-promo-slider {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(280px, 1fr);
    gap: 2px;
    margin: 5px -2px 5px;
    padding: 2px 2px 10px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}

.sg-home-visitor-stack {
    display: grid;
    gap: 2px;
}

.sg-promo-slide {
    position: relative;
    min-height: 176px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 2px;
    overflow: hidden;
    padding: 18px;
    border-radius: 8px;
    color: #fff;
    text-decoration: none;
    background: #172033;
    scroll-snap-align: start;
    isolation: isolate;
}

.sg-promo-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(15, 23, 42, .84) 0%, rgba(15, 23, 42, .42) 55%, rgba(15, 23, 42, .18) 100%);
}

.sg-promo-slide img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sg-promo-slide > span {
    width: max-content;
    max-width: calc(100% - 16px);
    padding: 5px 8px;
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 7px;
    background: rgba(15, 118, 110, .96);
    color: #ffffff;
    font-size: .68rem;
    font-weight: 750;
    line-height: 1;
    text-shadow: none;
}

.sg-promo-slide strong {
    max-width: 72%;
    font-size: 1.04rem;
    line-height: 1.18;
    color: #ffffff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .45);
}

.sg-promo-slide small {
    max-width: 76%;
    color: rgba(255, 255, 255, .92);
    font-size: .78rem;
    line-height: 1.35;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .42);
}

.sg-promo-slide em {
    width: max-content;
    margin-top: 8px;
    padding: 6px 9px;
    border-radius: 6px;
    color: #fff;
    background: var(--sg-primary);
    font-size: .72rem;
    font-style: normal;
    font-weight: 750;
}

.sg-home-category-panel {
    padding: 14px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.sg-home-promo-panel {
    padding: 0;
}

.sg-home-block {
    padding-top: 4px;
}

.sg-home-block + .sg-home-block {
    margin-top: 2px;
}

.sg-home-block-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    margin-bottom: 5px;
    padding: 8px 10px;
    border: 1px solid #ccfbf1;
    border-radius: 8px;
    background: linear-gradient(90deg, #f0fdfa, #ffffff);
}

.sg-home-block-title > div:first-child {
    min-width: 0;
}

.sg-home-block-title h2 {
    margin: 2px 0 0;
    font-size: 1.02rem;
    line-height: 1.22;
}

.sg-home-block-title span {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: var(--sg-primary);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.sg-home-block-title .btn {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    flex: 0 0 auto;
    min-height: 34px;
    padding: 7px 10px;
    border-radius: 7px;
    font-size: .76rem;
}

.sg-category-circles {
    display: flex;
    gap: 2px;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    padding: 2px 1px 8px;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.sg-category-circles::-webkit-scrollbar {
    display: none;
}

.sg-category-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2px;
    margin-bottom: 10px;
    padding: 4px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
}

.sg-category-tabs button {
    min-width: 0;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 7px;
    color: var(--sg-muted);
    background: transparent;
    font-size: .82rem;
    font-weight: 750;
    line-height: 1.15;
    cursor: pointer;
    overflow: hidden;
}

.sg-category-tabs button i {
    flex: 0 0 auto;
    color: var(--sg-primary);
    font-size: 1rem;
}

.sg-category-tabs button span {
    min-width: 0;
}

.sg-category-tabs button.is-active {
    border-color: rgba(0, 168, 132, .22);
    color: var(--sg-text);
    background: #fff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .06);
}

.sg-category-tab-panel[hidden] {
    display: none !important;
}

.sg-category-tab-note {
    margin: 0 0 8px;
    color: var(--sg-muted);
    font-size: .78rem;
    line-height: 1.3;
}

.sg-category-empty {
    display: flex;
    align-items: center;
    gap: 2px;
    min-height: 64px;
    padding: 12px;
    border: 1px dashed #99f6e4;
    border-radius: 8px;
    color: var(--sg-muted);
    background: #f0fdfa;
    font-size: .82rem;
}

.sg-category-empty i {
    color: var(--sg-primary);
}

.sg-category-circle {
    flex: 0 0 104px;
    min-width: 104px;
    display: grid;
    justify-items: center;
    gap: 2px;
    padding: 12px 8px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    background: #fff;
    text-align: center;
    text-decoration: none;
    box-shadow: none;
    scroll-snap-align: start;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.sg-category-circle:hover {
    border-color: #99f6e4;
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(15, 23, 42, .09);
}

.sg-category-circle > span {
    width: 76px;
    height: 76px;
    display: block;
    overflow: hidden;
    border: 3px solid #f0fdfa;
    border-radius: 50%;
    background: #eef2f7;
}

.sg-category-circle img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.sg-category-icon-card > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-color: #ccfbf1;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: 1.75rem;
}

.sg-category-circle strong {
    max-width: 100%;
    overflow: hidden;
    font-size: .78rem;
    line-height: 1.2;
    text-overflow: ellipsis;
}

.sg-category-circle small {
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.1;
}

.sg-store-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.sg-cart-link {
    position: relative;
    gap: 2px;
}

.sg-cart-link .sg-cart-badge {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 17px;
    height: 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    border: 2px solid #fff;
    border-radius: 999px;
    color: #fff;
    background: #ef4444;
    font-size: .62rem;
    font-weight: 800;
    line-height: 1;
}

.sg-cart-link .sg-cart-badge[hidden] {
    display: none;
}

.sg-nav-form {
    margin: 0;
}

.sg-cart-badge {
    min-width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 999px;
    color: #fff;
    background: var(--sg-primary);
    font-size: .72rem;
    font-weight: 700;
    line-height: 1;
}

.sg-cart-badge[hidden] {
    display: none;
}

.sg-cart-flyer {
    position: fixed;
    z-index: 9999;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: 0 18px 34px rgba(15, 23, 42, .26);
    pointer-events: none;
    transition: transform .68s cubic-bezier(.22, .8, .24, 1), opacity .68s ease;
    will-change: transform, opacity;
}

[data-cart-action].is-cart-adding,
[data-customize-product].is-cart-adding {
    transform: scale(.94);
}

[data-cart-action].is-cart-added,
[data-customize-product].is-cart-added {
    animation: sg-cart-added .62s ease;
}

.sg-cart-link.is-cart-bump,
a[href$="/sepet"].is-cart-bump {
    animation: sg-cart-bump .58s ease;
}

@keyframes sg-cart-added {
    0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, .35); }
    45% { box-shadow: 0 0 0 8px rgba(34, 197, 94, .18); }
    100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

@keyframes sg-cart-bump {
    0%, 100% { transform: scale(1); }
    35% { transform: scale(1.14); }
    70% { transform: scale(.96); }
}

.sg-store-detail {
    background: var(--sg-soft);
}

.sg-store-hero {
    padding: 22px 0 16px;
    background: linear-gradient(180deg, #fff 0%, #f0fdfa 100%);
}

.sg-store-shell {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
    padding: 14px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.sg-store-cover img {
    width: 100%;
    height: 156px;
    border-radius: 8px;
    object-fit: cover;
    background: #eef2f7;
}

.sg-store-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.sg-store-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px;
    align-items: start;
}

.sg-store-info h1 {
    margin: 0 0 8px;
    font-size: clamp(1.35rem, 3vw, 2rem);
    line-height: 1.12;
}

.sg-store-info p {
    max-width: 720px;
    margin: 0;
    color: var(--sg-muted);
    line-height: 1.48;
    font-size: .9rem;
}

.sg-store-badges,
.sg-menu-flags {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 14px;
}

.sg-badge,
.sg-menu-flags span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 7px;
    border-radius: 5px;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

.sg-badge-warning {
    background: #f0fdfa;
    color: #134e4a;
}

.sg-badge-success {
    background: #ecfdf3;
    color: #027a48;
}

.sg-badge-info {
    background: #eff8ff;
    color: #175cd3;
}

.sg-badge-money {
    background: #fff1f3;
    color: #c01048;
}

.sg-panel {
    margin-bottom: 16px;
    padding: 18px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.sg-panel-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    margin-bottom: 14px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: linear-gradient(180deg, #f0fdfa 0%, #fff 100%);
    box-shadow: inset 3px 0 0 var(--sg-primary);
}

.sg-panel-title span {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-bottom: 3px;
    padding: 3px 7px;
    border-radius: 5px;
    color: #134e4a;
    background: rgba(249, 115, 22, .12);
    font-size: .62rem;
    font-weight: 650;
    line-height: 1;
    text-transform: uppercase;
}

.sg-panel-title h2 {
    margin: 0;
    color: var(--sg-text);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}

.sg-panel-title h1 {
    margin: 0;
    color: var(--sg-text);
    font-weight: 700;
    line-height: 1.2;
}

.sg-panel-title-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
}

.sg-panel-title-action .btn {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    flex: 0 0 auto;
    min-height: 34px;
    padding: 7px 10px;
    border-radius: 8px;
    font-size: .78rem;
}

.sg-form-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--sg-border);
}

.sg-form-toolbar strong {
    font-size: .9rem;
}

.sg-wallet-request-form[hidden] {
    display: none !important;
}

.sg-menu-section {
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.sg-menu-section + .sg-menu-section {
    margin-top: 12px;
}

.sg-menu-section summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 11px 12px;
    cursor: pointer;
    background: #f8fafc;
    font-weight: 650;
}

.sg-menu-section summary small {
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 500;
}

.sg-menu-category-title {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 0;
}

.sg-menu-category-nav {
    display: flex;
    flex-wrap: nowrap;
    gap: 2px;
    margin: 0 0 10px;
    padding: 0 0 6px;
    overflow-x: auto;
    scrollbar-width: none;
}

.sg-menu-category-nav::-webkit-scrollbar {
    display: none;
}

.sg-menu-category-nav a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 9px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    color: #134e4a;
    background: #f0fdfa;
    font-size: .74rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.sg-menu-category-nav a:hover {
    color: #fff;
    background: var(--sg-primary);
    border-color: var(--sg-primary);
}

.sg-menu-section {
    scroll-margin-top: 82px;
}

.sg-menu-category-title strong {
    min-width: 0;
    overflow: hidden;
    font-size: .94rem;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-menu-list {
    display: grid;
    gap: 0;
}

.sg-menu-item {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) 38px;
    gap: 2px;
    align-items: start;
    padding: 12px;
    border-top: 1px solid var(--sg-border);
    min-width: 0;
}

.sg-menu-item img {
    width: 96px;
    height: 84px;
    border-radius: 8px;
    object-fit: cover;
    background: #eef2f7;
}

.sg-menu-item-body {
    min-width: 0;
}

.sg-menu-item-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2px;
}

.sg-menu-name {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px;
}

.sg-menu-item h3 {
    margin: 0;
    font-size: .9rem;
    line-height: 1.25;
}

.sg-customizable-badge {
    min-height: 18px;
    display: inline-flex;
    align-items: center;
    padding: 2px 6px;
    border: 1px solid #99f6e4;
    border-radius: 5px;
    color: #134e4a;
    background: #f0fdfa;
    font-size: .58rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

.sg-menu-item p {
    margin: 8px 0 0;
    color: var(--sg-muted);
    font-size: .8rem;
    line-height: 1.45;
}

.sg-menu-price {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 2px;
    min-width: 118px;
    text-align: right;
}

.sg-menu-price del {
    color: #98a2b3;
    font-size: .78rem;
    font-style: italic;
}

.sg-menu-price strong {
    color: #111827;
    font-size: .86rem;
    font-weight: 650;
}

.sg-menu-price span {
    padding: 3px 6px;
    border-radius: 5px;
    background: #dcfce7;
    color: #166534;
    font-size: .68rem;
    font-weight: 600;
}

.sg-menu-flags {
    margin-top: 10px;
}

.sg-menu-flags span {
    min-height: 22px;
    background: #f2f4f7;
    color: #344054;
    font-size: .66rem;
}

.sg-product-actions {
    display: grid;
    gap: 7px;
    justify-items: center;
    min-width: 0;
}

.sg-product-qty {
    display: inline-grid;
    grid-template-columns: 28px 34px 28px;
    align-items: center;
    height: 30px;
    overflow: hidden;
    border: 1px solid #cbd5e1;
    border-radius: 7px;
    background: #ffffff;
}

.sg-product-qty button {
    width: 28px;
    height: 30px;
    border: 0;
    background: #f8fafc;
    color: #0f766e;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1;
}

.sg-product-qty input {
    width: 34px;
    height: 30px;
    border: 0;
    border-inline: 1px solid #e2e8f0;
    color: #0f172a;
    background: #ffffff;
    font-size: .78rem;
    font-weight: 650;
    text-align: center;
    -moz-appearance: textfield;
}

.sg-product-qty input::-webkit-outer-spin-button,
.sg-product-qty input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.sg-product-add-button {
    min-width: 42px;
    height: 32px;
    padding-inline: 10px;
}

.sg-customizer-quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    flex: 0 0 auto;
    margin: 5px 6px;
    min-height: 48px;
    padding: 2px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc;
}

.sg-customizer-quantity > span {
    color: #334155;
    font-size: .82rem;
    font-weight: 650;
}

.sg-icon-button,
.sg-fav-button {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 0;
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    color: var(--sg-text);
    background: #fff;
    font-size: .88rem;
    font-weight: 650;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

.sg-icon-button i,
.sg-fav-button i,
.sg-account-menu i,
.sg-account-item-card i {
    font-size: 1rem;
    line-height: 1;
}

.sg-icon-button:hover,
.sg-fav-button:hover {
    border-color: #99f6e4;
    color: #134e4a;
    background: #f0fdfa;
}

.sg-icon-button-primary {
    border-color: var(--sg-primary);
    color: #fff;
    background: var(--sg-primary);
}

.sg-icon-button-danger {
    border-color: #fecdd3;
    color: #be123c;
    background: #fff1f2;
}

.sg-icon-button-success {
    border-color: #86efac;
    color: #15803d;
    background: #dcfce7;
}

.sg-icon-button-info {
    border-color: #93c5fd;
    color: #1d4ed8;
    background: #eff6ff;
}

.sg-icon-button-warning {
    border-color: #fde68a;
    color: #a16207;
    background: #fffbeb;
}

.sg-fav-form {
    margin: 0;
}

.sg-fav-button {
    border: 1px solid #e5e7eb;
    color: #334155;
    background: #fff;
    font-size: 1rem;
    font-weight: 700;
}

.sg-fav-button:hover,
.sg-fav-button:focus {
    border-color: #fecdd3;
    color: #e11d48;
    background: #fff;
    box-shadow: 0 .35rem .85rem rgba(225, 29, 72, .12);
}

.sg-fav-button.is-active {
    border-color: #fecdd3;
    color: #e11d48;
    background: #fff;
}

.sg-fav-button.is-active:hover,
.sg-fav-button.is-active:focus {
    border-color: #fb7185;
    color: #be123c;
    background: #fff5f7;
}

.sg-product-actions .btn {
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 7px;
    font-size: .92rem;
}

.sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled {
    background: rgba(148, 163, 184, .08);
}

.sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled img,
.sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled .sg-menu-item-body {
    filter: grayscale(.18);
    opacity: .58;
}

.sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled .sg-menu-price strong,
.sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled h3 {
    color: #64748b;
}

.sg-store-menu-panel.is-store-closed .sg-product-actions .btn:disabled,
.sg-store-menu-panel.is-store-closed .sg-product-actions button[disabled] {
    border-color: #cbd5e1;
    background: #e2e8f0;
    color: #94a3b8;
    cursor: not-allowed;
    opacity: .78;
}

body.sg-theme-koyu .sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled,
body[data-customer-theme="koyu"] .sg-store-menu-panel.is-store-closed .sg-menu-item.is-disabled {
    background: rgba(148, 163, 184, .06);
}

body.sg-theme-koyu .sg-store-menu-panel.is-store-closed .sg-product-actions .btn:disabled,
body.sg-theme-koyu .sg-store-menu-panel.is-store-closed .sg-product-actions button[disabled],
body[data-customer-theme="koyu"] .sg-store-menu-panel.is-store-closed .sg-product-actions .btn:disabled,
body[data-customer-theme="koyu"] .sg-store-menu-panel.is-store-closed .sg-product-actions button[disabled] {
    border-color: #334155;
    background: #1e293b;
    color: #94a3b8;
}

.sg-contact-card dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
    margin: 0;
}

.sg-contact-card dl > div {
    min-width: 0;
    padding: 9px 10px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
}

.sg-contact-card .sg-contact-wide {
    grid-column: 1 / -1;
}

.sg-contact-card dt {
    color: var(--sg-muted);
    font-size: .64rem;
    font-weight: 600;
    text-transform: uppercase;
}

.sg-contact-card dd {
    margin: 2px 0 0;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .82rem;
    font-weight: 500;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-contact-actions,
.sg-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 14px;
}

.sg-social-links a {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: .72rem;
    font-weight: 650;
    text-decoration: none;
}

.sg-info-accordion {
    display: grid;
    gap: 2px;
}

.sg-info-row {
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.sg-info-row summary {
    min-height: 58px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 24px;
    align-items: center;
    gap: 2px;
    padding: 2px;
    cursor: pointer;
    list-style: none;
}

.sg-info-row summary::-webkit-details-marker {
    display: none;
}

.sg-info-row summary::after {
    content: "\F282";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 6px;
    color: var(--sg-muted);
    font-family: "bootstrap-icons";
    font-size: .8rem;
    transition: transform .18s ease, background .18s ease, color .18s ease;
}

.sg-info-row[open] summary::after {
    transform: rotate(180deg);
    color: var(--sg-primary);
    background: #f0fdfa;
}

.sg-info-row summary span {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: var(--sg-text);
    font-size: .86rem;
    font-weight: 800;
}

.sg-info-row summary span i {
    color: var(--sg-primary);
    font-size: .95rem;
}

.sg-info-row summary small {
    max-width: 142px;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 600;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-info-row-body,
.sg-hours-list {
    padding: 0 12px 12px;
}

.sg-info-row-body p {
    margin: 6px 0 0;
    color: var(--sg-muted);
    font-size: .78rem;
    line-height: 1.45;
}

.sg-hours-list {
    display: grid;
    gap: 2px;
}

.sg-hours-list div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 7px 9px;
    border-radius: 7px;
    background: #f8fafc;
}

.sg-hours-list div.is-today {
    background: #f0fdfa;
    color: #134e4a;
}

.sg-hours-list span,
.sg-hours-list strong {
    font-size: .76rem;
}

.sg-hours-list strong {
    font-weight: 800;
}

.sg-share-store {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    margin-top: 12px;
    min-height: 38px;
    border-radius: 8px;
    font-size: .82rem;
    font-weight: 800;
}

.sg-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 2px;
    align-items: start;
}

.sg-cart-layout .sg-panel-title h1 {
    margin: 0;
    font-size: 1rem;
}

.sg-empty-cart {
    display: grid;
    justify-items: start;
    gap: 2px;
    padding: 2px 0;
}

.sg-empty-cart strong {
    font-size: 1rem;
}

.sg-empty-cart p {
    margin: 0;
    color: var(--sg-muted);
}

.sg-cart-items {
    display: grid;
    gap: 2px;
}

.sg-cart-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-cart-item-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 2px;
}

.sg-cart-item-actions form,
.sg-clear-cart-form {
    margin: 0;
}

.sg-cart-item h2 {
    margin: 0;
    font-size: .8rem;
    line-height: 1.2;
}

.sg-cart-item p {
    margin: 2px 0 0;
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.25;
}

.sg-cart-summary dl {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px;
    margin: 0;
}

.sg-cart-summary dt {
    color: var(--sg-muted);
    font-weight: 700;
}

.sg-cart-summary dd {
    margin: 0;
    font-weight: 850;
    text-align: right;
}

.sg-minimum-warning,
.sg-minimum-ok {
    margin-bottom: 2px;
    padding: 2px;
    border-radius: 8px;
    font-size: .8rem;
    font-weight: 800;
}

.sg-minimum-warning {
    background: #f0fdfa;
    color: #134e4a;
    border: 1px solid #99f6e4;
}

.sg-minimum-ok {
    background: #ecfdf3;
    color: #027a48;
    border: 1px solid #abefc6;
}

.sg-checkout-btn {
    width: 100%;
    margin-top: 2px;
}

.sg-checkout-btn:disabled {
    opacity: .55;
    cursor: not-allowed;
}

.sg-checkout-form {
    margin: 0;
}

.sg-coupon-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px;
    align-items: end;
    margin: 2px 0 0;
}

.sg-coupon-form label {
    display: grid;
    gap: 2px;
    margin: 0;
    font-size: .78rem;
    font-weight: 650;
    color: var(--sg-muted);
}

.sg-coupon-form .form-control {
    min-height: 38px;
    border-radius: 8px;
    font-size: .88rem;
}

.sg-coupon-form .btn {
    min-height: 38px;
    border-radius: 8px;
}

.sg-scheduled-order-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
    margin-top: 2px;
}

.sg-scheduled-order-fields[hidden] {
    display: none !important;
}

.sg-footer {
    margin-top: 20px;
    padding: 34px 0 18px;
    background: #101828;
    color: #fff;
}

.sg-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.sg-footer strong {
    display: block;
    margin-bottom: 10px;
    font-size: 1rem;
}

.sg-footer-brand p {
    max-width: 280px;
}

.sg-footer span {
    display: block;
    margin-bottom: 10px;
    color: #99f6e4;
    font-size: .7rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-footer a,
.sg-footer p {
    display: block;
    margin: 0 0 7px;
    color: #d0d5dd;
    font-size: .82rem;
    line-height: 1.5;
    text-decoration: none;
}

.sg-footer a:hover {
    color: #fff;
}

.sg-footer-apps {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 10px 0 12px;
    max-width: 260px;
}

.sg-footer-apps a {
    align-items: center;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 8px;
    display: grid;
    gap: 5px;
    grid-template-columns: 24px minmax(0, 1fr);
    margin: 0;
    min-height: 38px;
    padding: 5px 6px;
}

.sg-footer-apps a:hover {
    background: rgba(255, 255, 255, .14);
    border-color: rgba(255, 255, 255, .30);
}

.sg-footer-apps i {
    align-items: center;
    background: rgba(255, 255, 255, .94);
    border-radius: 6px;
    color: #101828;
    display: inline-flex;
    font-size: .82rem;
    height: 24px;
    justify-content: center;
    width: 24px;
}

.sg-footer-apps span {
    color: #fff;
    display: block;
    margin: 0;
    text-transform: none;
}

.sg-footer-apps small,
.sg-footer-apps b {
    display: block;
    line-height: 1.1;
}

.sg-footer-apps small {
    color: rgba(255, 255, 255, .92);
    font-size: .58rem;
    font-weight: 700;
}

.sg-footer-apps b {
    color: #fff;
    font-size: .64rem;
    font-weight: 800;
}

.sg-footer-login-title {
    margin-top: 16px;
}

.sg-footer-social,
.sg-footer-login-icons {
    display: flex;
    flex-wrap: nowrap;
    gap: 2px;
    margin-top: 10px;
    min-width: 0;
}

.sg-footer-social a,
.sg-footer-login-icons a {
    align-items: center;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 9px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 31px;
    height: 31px;
    justify-content: center;
    margin: 0;
    text-decoration: none;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
    width: 31px;
}

.sg-footer-social a i,
.sg-footer-login-icons a i {
    font-size: .9rem;
    line-height: 1;
}

.sg-footer-social a:hover,
.sg-footer-login-icons a:hover {
    background: var(--sg-primary);
    border-color: var(--sg-primary);
    color: #fff;
    transform: translateY(-1px);
}

.sg-footer-bottom {
    margin-top: 24px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: #98a2b3;
    font-size: .75rem;
}

.sg-footer-credit {
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: 0;
    border: 0;
    color: #99f6e4;
    background: transparent;
    font: inherit;
    font-weight: 900;
    line-height: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.sg-footer-credit:hover {
    color: #fff;
}

.sg-credit-modal[hidden] {
    display: none !important;
}

.sg-credit-modal {
    position: fixed;
    inset: 0;
    z-index: 1080;
    display: grid;
    place-items: center;
    padding: 18px;
}

.sg-credit-backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(15, 23, 42, .58);
}

.sg-credit-dialog {
    position: relative;
    width: min(100%, 360px);
    padding: 18px;
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    color: var(--sg-text);
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .28);
}

.sg-credit-close {
    position: absolute;
    top: 10px;
    right: 10px;
}

.sg-credit-dialog > span {
    display: inline-flex;
    margin-bottom: 7px;
    padding: 4px 7px;
    border-radius: 7px;
    color: #134e4a;
    background: #f0fdfa;
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-credit-dialog h2 {
    margin: 0;
    font-size: 1.12rem;
    line-height: 1.2;
}

.sg-credit-dialog p {
    margin: 8px 0 0;
    color: var(--sg-muted);
    font-size: .86rem;
    line-height: 1.45;
}

.sg-credit-actions {
    display: flex;
    gap: 2px;
    margin-top: 14px;
}

.sg-credit-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    flex: 1 1 0;
    min-height: 36px;
    border-radius: 8px;
}

/* Final bestseller card polish: compact, even, production-ready product cards. */
.sg-home .sg-bestseller-grid {
    align-items: stretch;
}

.sg-home .sg-bestseller-grid[data-home-carousel] > .sg-bestseller-card {
    min-height: 0 !important;
}

.sg-home .sg-bestseller-card {
    appearance: none !important;
    cursor: pointer !important;
    text-align: left !important;
    display: grid !important;
    grid-template-rows: 116px minmax(0, 1fr) !important;
    height: 100% !important;
    min-height: 314px !important;
    max-height: 314px !important;
    border-radius: 10px !important;
}

.sg-home .sg-bestseller-card:focus-visible {
    outline: 3px solid rgba(0, 168, 132, .28);
    outline-offset: 2px;
}

.sg-home .sg-bestseller-card .sg-card-media {
    height: 116px !important;
    min-height: 116px !important;
    max-height: 116px !important;
    aspect-ratio: auto !important;
}

.sg-home .sg-bestseller-card > div {
    display: grid !important;
    grid-template-rows: auto auto minmax(30px, auto) minmax(22px, auto) auto !important;
    gap: 4px !important;
    min-height: 0 !important;
    padding: 9px !important;
}

.sg-home .sg-bestseller-card h3 {
    min-height: 0 !important;
    -webkit-line-clamp: 1 !important;
    font-size: .82rem !important;
    line-height: 1.18 !important;
}

.sg-home .sg-bestseller-store {
    font-size: .68rem !important;
    line-height: 1.15 !important;
}

.sg-home .sg-bestseller-desc {
    -webkit-line-clamp: 2 !important;
    min-height: 32px !important;
    max-height: 32px !important;
    font-size: .68rem !important;
    line-height: 1.18 !important;
}

.sg-home .sg-product-meta-row {
    align-items: center !important;
    flex-wrap: nowrap !important;
    min-height: 20px !important;
    gap: 4px !important;
    width: 100% !important;
}

.sg-home .sg-product-meta-row span {
    flex: 0 0 auto !important;
    min-height: 19px !important;
    padding: 3px 5px !important;
    font-size: .61rem !important;
}

.sg-home .sg-product-meta-row span:nth-child(n+5) {
    display: none !important;
}

.sg-home .sg-product-meta-price {
    margin-left: auto !important;
    background: #f0fdfa !important;
    border: 1px solid #99f6e4 !important;
    color: var(--sg-text) !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

.sg-home .sg-product-old-price {
    align-self: end !important;
    color: #94a3b8 !important;
    font-size: .66rem !important;
    font-style: italic !important;
    line-height: 1 !important;
    margin-top: -2px !important;
    text-decoration: line-through !important;
}

.sg-home .sg-product-tags {
    min-height: 21px !important;
    max-height: 21px !important;
    overflow: hidden !important;
    display: none !important;
}

.sg-home .sg-product-tags span {
    min-height: 20px !important;
    padding: 3px 6px !important;
    font-size: .61rem !important;
}

.sg-home .sg-bestseller-card .sg-price {
    align-self: end !important;
    min-height: 28px !important;
    margin-top: 0 !important;
}

@media (max-width: 767.98px) {
    .sg-home .sg-bestseller-card {
        grid-template-rows: 90px minmax(0, 1fr) !important;
        min-height: 276px !important;
        max-height: 276px !important;
    }

    .sg-home .sg-bestseller-card .sg-card-media {
        height: 90px !important;
        min-height: 90px !important;
        max-height: 90px !important;
    }

    .sg-home .sg-bestseller-card > div {
        grid-template-rows: auto auto minmax(16px, auto) minmax(22px, auto) auto !important;
        gap: 3px !important;
        padding: 7px !important;
    }

    .sg-home .sg-bestseller-desc {
        -webkit-line-clamp: 1 !important;
        min-height: 16px !important;
        max-height: 16px !important;
    }

    .sg-home .sg-product-meta-row span:nth-child(n+3):not(.sg-product-meta-price) {
        display: none !important;
    }

    .sg-home .sg-product-meta-price {
        font-size: .63rem !important;
        padding-inline: 5px !important;
    }

    .sg-home .sg-product-tags {
        min-height: 20px !important;
        max-height: 20px !important;
    }
}

/* Final category carousel containment: desktop and mobile must never stretch the page. */
.sg-home-category-panel {
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
}

.sg-home-category-panel .sg-category-tab-panel {
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
}

.sg-home-category-panel .sg-category-circles,
.sg-home-category-panel .sg-category-circles[data-home-carousel] {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    grid-auto-columns: unset !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding: 2px 0 8px !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
}

.sg-home-category-panel .sg-category-circles::-webkit-scrollbar {
    display: none !important;
}

.sg-home-category-panel .sg-category-circle,
.sg-home-category-panel .sg-category-circles[data-home-carousel] > .sg-category-circle {
    flex: 0 0 104px !important;
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
    scroll-snap-align: start !important;
}

@media (max-width: 767.98px) {
    .sg-home-category-panel .sg-category-circle,
    .sg-home-category-panel .sg-category-circles[data-home-carousel] > .sg-category-circle {
        flex-basis: 84px !important;
        width: 84px !important;
        min-width: 84px !important;
        max-width: 84px !important;
    }
}

.sg-home-product-modal[hidden] {
    display: none !important;
}

.sg-home-product-modal {
    position: fixed;
    inset: 0;
    z-index: 1085;
    display: grid;
    place-items: center;
    padding: 18px;
}

.sg-home-product-backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(15, 23, 42, .62);
}

.sg-home-product-dialog {
    position: relative;
    width: min(100%, 760px);
    display: grid;
    grid-template-columns: minmax(0, 320px) minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid var(--sg-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 26px 80px rgba(15, 23, 42, .32);
}

.sg-home-product-close {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
}

.sg-home-product-media {
    position: relative;
    min-height: 320px;
    background: #f2f4f7;
}

.sg-home-product-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.sg-home-product-media span {
    position: absolute;
    left: 12px;
    top: 12px;
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 5px 8px;
    border-radius: 8px;
    color: #fff;
    background: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
}

.sg-home-product-info {
    display: grid;
    align-content: start;
    gap: 2px;
    min-width: 0;
    padding: 22px;
}

.sg-home-product-info > span {
    display: inline-flex;
    justify-self: start;
    min-height: 24px;
    align-items: center;
    padding: 4px 8px;
    border-radius: 8px;
    color: #134e4a;
    background: #f0fdfa;
    font-size: .72rem;
    font-weight: 900;
}

.sg-home-product-info h2 {
    margin: 0;
    color: var(--sg-text);
    font-size: 1.24rem;
    line-height: 1.18;
}

.sg-home-product-info p {
    margin: 0;
    color: var(--sg-muted);
    font-size: .9rem;
    line-height: 1.45;
}

.sg-home-product-stats,
.sg-home-product-review-summary,
.sg-home-product-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
}

.sg-home-product-stats span,
.sg-home-product-review-summary span,
.sg-home-product-tags span {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    min-height: 28px;
    padding: 5px 8px;
    border-radius: 8px;
    background: #f8fafc;
    color: #475467;
    font-size: .76rem;
    font-weight: 850;
}

.sg-home-product-review-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 2px;
}

.sg-home-product-review-summary span {
    align-items: flex-start;
    border: 1px solid var(--sg-border);
    flex-direction: column;
    gap: 2px;
    min-height: 62px;
    padding: 2px;
}

.sg-home-product-review-summary i {
    color: #f59e0b;
    font-size: .84rem;
}

.sg-home-product-review-summary b {
    color: var(--sg-text);
    font-size: .78rem;
    font-weight: 900;
    line-height: 1.1;
}

.sg-home-product-review-summary small {
    color: var(--sg-muted);
    font-size: .62rem;
    font-weight: 800;
    line-height: 1.1;
}

.sg-home-product-stats i {
    color: #f59e0b;
}

.sg-home-product-tags span {
    border: 1px solid #99f6e4;
    color: #134e4a;
    background: #f0fdfa;
}

.sg-home-product-price {
    display: flex;
    align-items: baseline;
    gap: 2px;
    margin-top: 2px;
}

.sg-home-product-price del {
    color: #94a3b8;
    font-size: .82rem;
    font-style: italic;
}

.sg-home-product-price strong {
    color: var(--sg-text);
    font-size: 1.12rem;
    font-weight: 900;
}

.sg-home-product-info .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    min-height: 40px;
    border-radius: 9px;
    font-size: .88rem;
    font-weight: 850;
}

@media (max-width: 767.98px) {
    .sg-home-product-modal {
        padding: 12px;
    }

    .sg-home-product-dialog {
        grid-template-columns: minmax(0, 1fr);
        max-height: calc(100vh - 24px);
        overflow-y: auto;
    }

    .sg-home-product-media {
        min-height: 190px;
        max-height: 220px;
    }

    .sg-home-product-info {
        gap: 2px;
        padding: 15px;
    }

    .sg-home-product-info h2 {
        font-size: 1.06rem;
    }

    .sg-home-product-info p {
        font-size: .82rem;
    }

    .sg-home-product-review-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-home-product-review-summary span {
        min-height: 54px;
        padding: 7px;
    }

    .sg-home-product-review-summary b {
        font-size: .74rem;
    }
}

.sg-static-page-shell {
    max-width: 980px;
    margin: 0 auto;
}

.sg-static-page-content {
    color: var(--sg-text);
    font-size: .94rem;
    line-height: 1.75;
    white-space: normal;
}

@media (max-width: 1199.98px) {
    .sg-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.sg-visitor-prompts {
    position: fixed;
    left: 18px;
    right: 18px;
    bottom: 18px;
    z-index: 1060;
    display: grid;
    gap: 2px;
    max-width: 480px;
    pointer-events: none;
}

.sg-visitor-prompt {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px;
    padding: 12px;
    border: 1px solid rgba(0, 168, 132, .22);
    border-radius: 8px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 16px 40px rgba(15, 23, 42, .14);
    pointer-events: auto;
}

.sg-visitor-prompt[hidden] {
    display: none !important;
}

.sg-visitor-prompt-icon {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(0, 168, 132, .1);
    color: var(--sg-primary);
    font-size: 1.18rem;
}

.sg-visitor-prompt-body {
    min-width: 0;
}

.sg-visitor-prompt-body strong {
    display: block;
    color: var(--sg-text);
    font-size: .9rem;
    font-weight: 750;
}

.sg-visitor-prompt-body p {
    margin: 3px 0 0;
    color: var(--sg-muted);
    font-size: .8rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.sg-visitor-prompt-body small {
    display: block;
    margin-top: 2px;
    color: #9a3412;
    font-size: .74rem;
    line-height: 1.35;
}

.sg-visitor-prompt-body .sg-install-status {
    color: #0f766e;
    font-weight: 650;
}

.sg-visitor-prompt-actions {
    display: flex;
    align-items: center;
    gap: 7px;
}

.sg-visitor-prompt-actions .btn {
    min-height: 34px;
    padding: 6px 10px;
    border-radius: 8px;
    font-size: .78rem;
    white-space: nowrap;
}

.sg-floating-cart {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 20;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 11px 14px;
    border-radius: 999px;
    color: #fff;
    background: var(--sg-primary);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .22);
    font-weight: 900;
    text-decoration: none;
}

.sg-floating-cart .sg-cart-badge {
    background: #fff;
    color: var(--sg-primary);
}

.sg-floating-cart[hidden] {
    display: none;
}

.sg-payment-form {
    display: grid;
    gap: 2px;
}

.sg-payment-group {
    display: grid;
    gap: 2px;
}

.sg-payment-group > strong {
    font-size: .9rem;
    font-weight: 650;
}

.sg-payment-group label:not(.sg-payment-option) {
    display: grid;
    gap: 2px;
    margin: 0;
    color: var(--sg-text);
    font-size: .84rem;
    font-weight: 650;
}

.sg-payment-group .form-control {
    min-height: 40px;
    border-radius: 8px;
    font-size: .9rem;
}

.sg-tip-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 2px;
}

.sg-muted-text {
    margin: 0;
    color: var(--sg-muted);
}

.sg-payment-option {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    font-weight: 650;
    cursor: pointer;
}

.sg-payment-option input {
    width: 18px;
    height: 18px;
    accent-color: var(--sg-primary);
}

.sg-auth-card,
.sg-result-card {
    width: calc(100vw - 20px);
    max-width: 460px;
    margin-inline: auto;
    padding: 20px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.sg-auth-card-wide {
    width: min(100%, 560px);
}

.sg-auth-section {
    display: flex;
    align-items: flex-start;
    padding-bottom: 0;
}

.sg-auth-section .container {
    width: 100%;
}

.sg-auth-shell {
    align-items: stretch;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(320px, 460px) minmax(0, 1fr);
    margin-inline: auto;
    max-width: 1040px;
    width: 100%;
}

.sg-auth-card-modern {
    align-content: start;
    display: grid;
    gap: 14px;
    margin: 0;
    max-width: none;
    min-height: 100%;
    padding: 22px;
}

.sg-auth-brand-mark {
    align-items: center;
    display: inline-flex;
    gap: 2px;
    margin-bottom: 2px;
}

.sg-auth-brand-mark span {
    align-items: center;
    background: var(--sg-primary);
    border-radius: 10px;
    color: #fff;
    display: inline-flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.sg-auth-brand-mark strong {
    color: var(--sg-text);
    font-size: .98rem;
    font-weight: 900;
}

.sg-auth-input {
    position: relative;
}

.sg-auth-input > i {
    bottom: 11px;
    color: var(--sg-muted);
    font-size: .95rem;
    left: 12px;
    position: absolute;
    z-index: 1;
}

.sg-auth-input .form-control,
.sg-auth-input input {
    padding-left: 38px;
}

.sg-auth-input :is(input, textarea)::placeholder,
.sg-work-apply-form :is(input, textarea)::placeholder,
.sg-login-clean :is(input, textarea)::placeholder {
    color: #94a3b8;
    font-weight: 500;
    opacity: .72;
}

body.sg-theme-koyu .sg-auth-input :is(input, textarea)::placeholder,
body.sg-theme-koyu .sg-work-apply-form :is(input, textarea)::placeholder,
body.sg-theme-koyu .sg-login-clean :is(input, textarea)::placeholder {
    color: #94a3b8;
    opacity: .65;
}

.sg-auth-visual {
    align-content: stretch;
    background: #111827;
    border-radius: 12px;
    display: grid;
    grid-template-rows: minmax(210px, 1fr) auto;
    isolation: isolate;
    min-height: 430px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
}

.sg-auth-visual figure {
    margin: 0;
    min-height: 230px;
    overflow: hidden;
    position: relative;
}

.sg-auth-visual img {
    height: 100%;
    inset: 0;
    object-fit: cover;
    object-position: center 42%;
    position: absolute;
    transform: scale(1.02);
    width: 100%;
}

.sg-auth-visual::after {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0), rgba(15, 23, 42, .28));
    content: "";
    inset: 0 0 auto;
    height: 58%;
    position: absolute;
    z-index: 1;
}

.sg-auth-visual-overlay {
    align-self: end;
    background: #111827;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    display: grid;
    gap: 2px;
    max-height: none;
    overflow: hidden;
    padding: 20px;
    position: relative;
    z-index: 2;
}

.sg-auth-visual-overlay > span {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 850;
    gap: 2px;
    justify-self: start;
    padding: 7px 10px;
}

.sg-auth-visual-overlay h2 {
    font-size: clamp(1.18rem, 2.1vw, 1.55rem);
    line-height: 1.12;
    margin: 0;
}

.sg-auth-visual-overlay p {
    color: rgba(255, 255, 255, .82);
    font-size: .88rem;
    line-height: 1.42;
    margin: 0;
    max-width: 520px;
}

.sg-auth-feature-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 2px;
}

.sg-auth-feature-grid strong {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 9px;
    display: inline-flex;
    font-size: .74rem;
    gap: 2px;
    padding: 7px 9px;
}

.sg-auth-form {
    display: grid;
    gap: 11px;
    width: 100%;
    min-width: 0;
}

.sg-auth-form label {
    display: grid;
    gap: 2px;
    color: var(--sg-text);
    font-size: .86rem;
    font-weight: 650;
}

.sg-auth-form .form-control {
    min-height: 40px;
    font-size: .9rem;
}

.sg-auth-row,
.sg-auth-switch {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
}

.sg-auth-row {
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
    min-width: 0;
}

.sg-auth-row .sg-check {
    flex: 0 1 auto;
    min-width: 0;
    margin: 0;
}

.sg-auth-row a {
    flex: 0 0 auto;
    margin-left: auto;
    max-width: 48%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .84rem;
}

.sg-auth-row a,
.sg-auth-switch a,
.sg-link-button {
    color: var(--sg-primary);
    font-weight: 650;
    text-decoration: none;
}

.sg-link-button {
    display: inline;
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.sg-auth-switch {
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 2px;
    justify-content: flex-start;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--sg-border);
    color: var(--sg-muted);
    font-size: .84rem;
}

.sg-auth-switch > span {
    flex: 0 0 auto;
    white-space: nowrap;
}

.sg-auth-switch > a {
    flex: 0 0 auto;
    margin-left: 0;
    white-space: nowrap;
}

.sg-captcha-row {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 2px;
    align-items: center;
}

.sg-captcha-row strong {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #99f6e4;
    border-radius: 7px;
    color: #134e4a;
    background: #f0fdfa;
    font-size: .92rem;
}

.sg-dev-link {
    display: grid;
    gap: 2px;
    margin-top: 14px;
    padding: 2px;
    border: 1px dashed #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
    font-size: .82rem;
}

.sg-dev-link span {
    color: #134e4a;
    font-weight: 900;
}

.sg-dev-link a {
    overflow-wrap: anywhere;
    color: var(--sg-text);
}

.sg-modal[hidden] {
    display: none;
}

.sg-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(15, 23, 42, .48);
}

.sg-modal-dialog {
    width: min(100%, 520px);
    max-height: min(80vh, 620px);
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 24px 80px rgba(15, 23, 42, .22);
}

.sg-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 14px;
    border-bottom: 1px solid var(--sg-border);
}

.sg-modal-head h2 {
    margin: 0;
    font-size: 1rem;
}

.sg-modal-body {
    overflow: auto;
    padding: 14px;
    color: var(--sg-muted);
    line-height: 1.55;
}

.sg-modal-backdrop {
    position: absolute;
    inset: 0;
}

.sg-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 14px;
    border-bottom: 1px solid var(--sg-border);
}

.sg-modal-header span {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-modal-header h2 {
    margin: 2px 0 0;
    font-size: 1rem;
}

.sg-customizer-dialog {
    position: relative;
    z-index: 1;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    overflow: hidden;
}

.sg-customizer-body {
    display: grid;
    gap: 5px;
    min-height: 0;
    overflow: auto;
    padding: 4px;
}

.sg-customizer-group {
    display: grid;
    gap: 5px;
    padding: 4px;
    border: 1px solid #cfe8e2;
    border-radius: 8px;
    background: linear-gradient(180deg, #ffffff, #f8fffc);
}

.sg-customizer-group-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 0;
    border: 0;
    color: inherit;
    background: transparent;
    cursor: pointer;
    text-align: left;
}

.sg-customizer-group-toggle > span {
    min-width: 0;
}

.sg-customizer-group-actions {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.sg-customizer-group-toggle i {
    color: #0f766e;
    font-size: .85rem;
    transition: transform .18s ease;
}

.sg-customizer-group-toggle[aria-expanded="false"] i {
    transform: rotate(-90deg);
}

.sg-customizer-group-options {
    display: grid;
    gap: 0;
    overflow: hidden;
    border: 1px solid #dde7e4;
    border-radius: 5px;
    background: #f8fafc;
}

.sg-customizer-group-options[hidden] {
    display: none !important;
}

.sg-customizer-group > div:not(.sg-customizer-group-options) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
}

.sg-customizer-group strong,
.sg-customizer-group small {
    display: block;
}

.sg-customizer-group strong {
    color: #1f5f52;
    font-weight: 650;
    line-height: 1.25;
}

.sg-customizer-group-toggle strong {
    color: #0f4f45;
    font-size: .84rem;
    font-weight: 720;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-customizer-group small {
    color: #7c5a35;
    font-size: .72rem;
    font-weight: 500;
    line-height: 1.25;
}

.sg-customizer-group-badge {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    padding: 2px 6px;
    border: 1px solid #f1c27b;
    border-radius: 999px;
    color: #8a3b0f !important;
    background: #fff7ed;
    font-size: .66rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap;
}

.sg-customizer-option {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 5px;
    align-items: center;
    padding: 3px;
    border: 0;
    border-radius: 0;
    background: transparent;
    cursor: pointer;
}

.sg-customizer-option + .sg-customizer-option,
.sg-customizer-variant-group + .sg-customizer-option,
.sg-customizer-option + .sg-customizer-variant-group {
    border-top: 1px solid #e5efec;
}

.sg-customizer-variant-group {
    display: grid;
    gap: 0;
}

.sg-customizer-variant-group > strong {
    padding: 4px 5px;
    border-bottom: 1px solid #e5efec;
    color: #0f4f45;
    background: #eefaf5;
    font-size: .76rem;
    font-weight: 650;
}

.sg-customizer-variant-group .sg-customizer-option + .sg-customizer-option {
    border-top: 1px solid #e5efec;
}

.sg-customizer-option input {
    accent-color: var(--sg-primary);
}

.sg-customizer-option span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    min-width: 0;
}

.sg-customizer-option strong {
    color: #263241;
    font-size: .85rem;
    font-weight: 500;
    min-width: 0;
    overflow-wrap: anywhere;
}

.sg-customizer-option small {
    color: #a14912;
    font-weight: 620;
    flex: 0 0 auto;
    margin-left: auto;
    white-space: nowrap;
}

.sg-customizer-option .sg-portion-badge {
    border: 1px solid #d7ece5;
    border-radius: 4px;
    background: #fff;
    color: #0f766e;
    font-size: .72rem;
    font-weight: 700;
    margin-left: .35rem;
    margin-right: auto;
    padding: 1px 5px;
}

.sg-customizer-option:has(input:checked) {
    background: #ecfdf5;
    box-shadow: inset 3px 0 0 #0f766e;
}

.sg-customizer-qty-option {
    grid-template-columns: 44px minmax(0, 1fr) auto;
}

.sg-customizer-qty-option > img,
.sg-customizer-qty-option > i {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    background: #f8fafc;
    border: 1px solid var(--sg-border);
    object-fit: cover;
}

.sg-customizer-qty-option > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #1f6f52;
    font-size: 1.25rem;
}

.sg-customizer-qty-option span {
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
}

.sg-customizer-qty-option small {
    color: #a14912;
    font-size: .72rem;
    font-weight: 620;
}

.sg-option-qty-control {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 3px;
    border: 1px solid #d7eee7;
    border-radius: 999px;
    background: #f0fdfa;
}

.sg-option-qty-control button {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: #1f6f52;
    color: #fff;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1;
}

.sg-option-qty-control button:hover {
    background: #285f4e;
}

.sg-option-qty-control input {
    width: 34px;
    min-height: 28px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #14231f;
    font-size: .82rem;
    font-weight: 800;
    text-align: center;
    appearance: textfield;
}

.sg-option-qty-control input::-webkit-outer-spin-button,
.sg-option-qty-control input::-webkit-inner-spin-button {
    margin: 0;
    appearance: none;
}

@media (max-width: 575.98px) {
    .sg-customizer-group {
        border-radius: 6px;
    }

    .sg-customizer-group-toggle {
        gap: 5px;
    }

    .sg-customizer-group-badge {
        max-width: 112px;
        overflow: hidden;
        padding-inline: 5px;
        text-overflow: ellipsis;
    }

    .sg-customizer-option {
        grid-template-columns: 16px minmax(0, 1fr);
    }

    .sg-customizer-option span {
        align-items: center;
        flex-direction: row;
        justify-content: space-between;
    }

    .sg-customizer-qty-option {
        grid-template-columns: 40px minmax(0, 1fr) auto;
    }

    .sg-customizer-qty-option > img,
    .sg-customizer-qty-option > i {
        width: 40px;
        height: 40px;
    }

    .sg-option-qty-control {
        padding: 2px;
    }

    .sg-option-qty-control button {
        width: 24px;
        height: 24px;
        font-size: .9rem;
    }

    .sg-option-qty-control input {
        width: 28px;
        min-height: 24px;
        font-size: .76rem;
    }
}

.sg-customizer-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 12px;
    border-top: 1px solid var(--sg-border);
}

.sg-customizer-footer strong {
    color: var(--sg-primary);
    font-size: 1rem;
}

.sg-result-card {
    text-align: center;
}

.sg-result-card span {
    color: var(--sg-primary);
    font-size: .8rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-result-card h1 {
    margin: 8px 0 10px;
    font-size: 1.12rem;
}

.sg-result-card p {
    color: var(--sg-muted);
}

.sg-result-summary {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px 14px;
    margin: 14px 0 0;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
    text-align: left;
}

.sg-result-summary dt,
.sg-result-summary dd {
    margin: 0;
    font-size: .9rem;
}

.sg-result-summary dt {
    color: var(--sg-muted);
    font-weight: 700;
}

.sg-result-summary dd {
    color: var(--sg-text);
    font-weight: 900;
}

.sg-result-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2px;
    margin-top: 14px;
}

.sg-order-list {
    display: grid;
    gap: 2px;
}

.sg-order-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 18px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: inherit;
    background: #fff;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease;
}

.sg-order-card > .bi-chevron-right {
    color: var(--sg-muted);
    font-size: .95rem;
}

.sg-order-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.sg-order-card span {
    color: var(--sg-primary);
    font-size: .78rem;
    font-weight: 900;
}

.sg-order-card h2 {
    margin: 4px 0;
    font-size: .94rem;
}

.sg-order-card p {
    margin: 0;
    color: var(--sg-muted);
}

.sg-order-card-meta {
    display: grid;
    justify-items: end;
    gap: 2px;
}

.sg-order-card-meta small,
.sg-order-status {
    padding: 8px 10px;
    border-radius: 8px;
    background: #f0fdfa;
    color: #134e4a;
    font-weight: 850;
}

.sg-order-status {
    margin-bottom: 2px;
}

.sg-order-status p {
    margin: 4px 0 0;
    color: #9a3412;
    font-size: .82rem;
}

.sg-address-box {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--sg-border);
}

.sg-address-box p {
    margin: 8px 0 0;
    color: var(--sg-muted);
    line-height: 1.5;
}

.sg-account-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

.sg-account-hero {
    padding: 22px 0 0;
    background: linear-gradient(180deg, #f0fdfa 0%, var(--sg-soft) 100%);
}

.sg-account-hero-card {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.sg-account-avatar {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: #fff;
    background: var(--sg-primary);
    font-size: 1.2rem;
    font-weight: 900;
}

.sg-account-identity {
    min-width: 0;
}

.sg-account-identity span {
    display: block;
    margin-bottom: 4px;
    color: var(--sg-primary);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-account-identity h1 {
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.15;
}

.sg-account-identity p {
    margin: 6px 0 0;
    color: var(--sg-muted);
    font-size: .84rem;
    line-height: 1.35;
}

.sg-account-logout {
    margin: 0;
    align-self: start;
    justify-self: end;
}

.sg-account-logout .btn {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    white-space: nowrap;
}

.sg-account-menu {
    display: grid;
    gap: 2px;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.sg-account-menu a,
.sg-account-menu button {
    width: 100%;
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    grid-template-areas:
        "icon title"
        "icon text";
    gap: 2px 9px;
    align-items: center;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    background: #fff;
    font: inherit;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.sg-account-menu a:hover,
.sg-account-menu button:hover,
.sg-account-menu a.is-active {
    border-color: #99f6e4;
    background: #f0fdfa;
    color: #134e4a;
}

.sg-account-menu a > span {
    grid-area: icon;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #f8fafc;
    color: var(--sg-primary);
    font-weight: 900;
}

.sg-account-menu a > span i {
    font-size: 1rem;
}

.sg-account-menu a > strong {
    grid-area: title;
    display: block;
    min-width: 0;
    font-size: .84rem;
    line-height: 1.2;
}

.sg-account-menu a > small {
    grid-area: text;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.25;
}

.sg-account-mobile-nav {
    display: none;
}

.sg-account-menu-toggle,
.sg-account-menu-close-tab,
.sg-account-menu-backdrop {
    display: none;
}

.sg-account-main {
    display: grid;
    gap: 16px;
    min-width: 0;
}

.sg-account-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2px;
}

.sg-clickable-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sg-clickable-stats a {
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .05);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.sg-clickable-stats a:hover {
    transform: translateY(-2px);
    border-color: #99f6e4;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.sg-clickable-stats a > span {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-clickable-stats a > span i {
    color: var(--sg-primary);
}

.sg-clickable-stats a > strong {
    color: var(--sg-ink);
    font-size: 1.02rem;
    line-height: 1.15;
}

.sg-clickable-stats a > small {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 700;
}

.sg-account-stats article,
.sg-account-item-card {
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .05);
}

.sg-account-stats article {
    padding: 14px;
}

.sg-account-stats span {
    display: block;
    color: var(--sg-muted);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-account-stats strong {
    display: block;
    margin-top: 2px;
    font-size: 1.08rem;
}

.sg-account-stats small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
}

.sg-stat-hero {
    padding: 16px;
}

.sg-bar-chart,
.sg-distribution-list,
.sg-stat-list {
    display: grid;
    gap: 2px;
}

.sg-bar-row {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) 70px;
    align-items: center;
    gap: 2px;
}

.sg-bar-row > span {
    color: var(--sg-muted);
    font-size: .78rem;
    font-weight: 800;
}

.sg-bar-row > div,
.sg-distribution-list i {
    display: block;
    overflow: hidden;
    height: 10px;
    border-radius: 8px;
    background: #eef2f7;
}

.sg-bar-row > div i,
.sg-distribution-list i b {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--sg-primary), #f59e0b);
}

.sg-bar-row > strong {
    text-align: right;
    color: var(--sg-ink);
    font-size: .8rem;
}

.sg-distribution-list > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 10px;
    align-items: center;
    padding: 2px;
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 8px;
    background: #f8fafc;
}

.sg-distribution-list span {
    color: var(--sg-ink);
    font-size: .84rem;
    font-weight: 800;
}

.sg-distribution-list strong {
    color: var(--sg-primary);
    font-size: .82rem;
}

.sg-distribution-list i {
    grid-column: 1 / -1;
}

.sg-stat-list a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 2px;
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 8px;
    background: #fff;
    color: inherit;
    text-decoration: none;
}

.sg-stat-list a:hover {
    border-color: #99f6e4;
}

.sg-stat-list strong,
.sg-stat-list small {
    display: block;
    min-width: 0;
}

.sg-stat-list strong {
    color: var(--sg-ink);
    font-size: .9rem;
}

.sg-stat-list small {
    color: var(--sg-muted);
    font-size: .76rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-stat-list em {
    color: var(--sg-primary);
    font-style: normal;
    font-size: .8rem;
    font-weight: 900;
}

.sg-location-card {
    padding: 14px;
}

.sg-location-summary,
.sg-location-empty {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px;
}

.sg-location-pin,
.sg-location-empty > i {
    display: inline-grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 10px;
    background: rgba(0, 168, 132, .1);
    color: var(--sg-primary);
    font-size: 1.05rem;
}

.sg-location-text {
    min-width: 0;
}

.sg-location-text strong,
.sg-location-empty strong {
    display: block;
    color: var(--sg-ink);
    font-size: .95rem;
}

.sg-location-text p {
    margin: 3px 0 0;
    color: var(--sg-muted);
    font-size: .8rem;
    line-height: 1.4;
}

.sg-location-text p span::before {
    content: " ? ";
}

.sg-location-text small,
.sg-location-empty small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: .74rem;
}

.sg-location-coordinates {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 8px;
}

.sg-location-coordinates span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 8px;
    border-radius: 7px;
    background: #f8fafc;
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 800;
}

.sg-location-map {
    overflow: hidden;
    height: 180px;
    margin-top: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: #e2e8f0;
}

.sg-account-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2px;
}

.sg-account-item-card {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) 14px;
    gap: 2px;
    align-items: center;
    padding: 14px;
    color: inherit;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.sg-card-forward {
    color: var(--sg-muted);
    font-size: .9rem;
}

.sg-account-item-card:hover {
    transform: translateY(-2px);
    border-color: #99f6e4;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.sg-account-item-card > span {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: #134e4a;
    background: #f0fdfa;
    font-weight: 900;
}

.sg-account-item-card strong {
    display: block;
    font-size: .9rem;
    line-height: 1.2;
}

.sg-account-item-card small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.3;
}

.sg-mini-order-list {
    display: grid;
    gap: 2px;
}

.sg-mini-order-list a {
    display: grid;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: inherit;
    background: #fff;
    text-decoration: none;
}

.sg-mini-order-list span {
    color: var(--sg-primary);
    font-size: .68rem;
    font-weight: 900;
}

.sg-mini-order-list strong {
    font-size: .88rem;
}

.sg-mini-order-list small {
    color: var(--sg-muted);
    font-size: .72rem;
}

.sg-account-order-list {
    gap: 7px;
}

.sg-account-order-list a {
    grid-template-columns: 34px minmax(0, 1fr) auto 14px;
    align-items: center;
    gap: 2px;
    min-height: 58px;
    padding: 9px 10px;
    border-radius: 8px;
}

.sg-account-order-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: .95rem;
}

.sg-account-order-body {
    min-width: 0;
}

.sg-account-order-body strong {
    display: block;
    margin: 0;
    overflow: hidden;
    color: var(--sg-ink);
    font-size: .82rem;
    line-height: 1.18;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-account-order-body small {
    display: block;
    margin-top: 2px;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-account-order-total {
    justify-self: end;
    padding: 5px 7px;
    border-radius: 7px;
    color: #166534;
    background: #f0fdf4;
    font-size: .74rem;
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
}

.sg-account-order-list a > .bi-chevron-right {
    color: #94a3b8;
    font-size: .82rem;
}

.sg-account-order-list a:hover .sg-account-order-icon {
    background: #ccfbf1;
}

.sg-wallet-list {
    display: grid;
    gap: 2px;
}

.sg-wallet-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sg-wallet-deposit {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 14px;
    align-items: start;
}

.sg-active-order {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 2px;
    align-items: center;
}

.sg-active-order strong,
.sg-active-order small {
    display: block;
}

.sg-active-order small {
    color: var(--sg-muted);
    font-size: .76rem;
}

.sg-wallet-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-wallet-row span {
    display: inline-flex;
    margin-bottom: 5px;
    color: var(--sg-primary);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-wallet-row strong {
    display: block;
    font-size: .9rem;
}

.sg-wallet-row small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
}

.sg-wallet-row > div:last-child {
    text-align: right;
}

.sg-wallet-row.is-negative > div:last-child strong {
    color: #c01048;
}

.sg-wallet-row.is-positive > div:last-child strong {
    color: #027a48;
}

.sg-favorite-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
}

.sg-favorite-card {
    display: grid;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-favorite-card > a {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 2px;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.sg-favorite-card img {
    width: 74px;
    height: 64px;
    border-radius: 8px;
    object-fit: cover;
    background: #eef2f7;
}

.sg-favorite-card strong {
    display: block;
    font-size: .88rem;
}

.sg-favorite-card small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.32;
}

.sg-favorite-card span {
    display: inline-flex;
    margin-top: 6px;
    color: #134e4a;
    font-size: .7rem;
    font-weight: 900;
}

.sg-fav-remove-form {
    margin: 0;
    display: flex;
    justify-content: flex-end;
}

.sg-account-summary {
    display: grid;
    gap: 2px;
    padding: 14px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
}

.sg-account-summary strong {
    font-size: 1rem;
}

.sg-account-summary span {
    color: var(--sg-muted);
}

.sg-account-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 14px;
}

.sg-account-form {
    display: grid;
    gap: 2px;
    margin-top: 16px;
}

.sg-account-form label {
    display: grid;
    gap: 2px;
    font-weight: 800;
}

.sg-account-form textarea.form-control {
    min-height: 96px;
    resize: vertical;
}

.sg-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
}

.sg-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    align-items: center;
}

.sg-settings-form {
    gap: 14px;
}

.sg-settings-card {
    display: grid;
    gap: 14px;
    padding: 16px;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.sg-settings-heading {
    display: flex;
    align-items: center;
    gap: 2px;
}

.sg-settings-heading > i {
    display: inline-grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 10px;
    background: rgba(0, 168, 132, 0.1);
    color: var(--sg-primary);
    font-size: 1rem;
}

.sg-settings-heading strong {
    display: block;
    font-size: 0.98rem;
    color: var(--sg-ink);
}

.sg-settings-heading span {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.sg-settings-switches {
    display: grid;
    gap: 2px;
}

.sg-setting-switch {
    display: flex !important;
    grid-template-columns: none !important;
    justify-content: space-between;
    align-items: center;
    gap: 2px;
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 10px;
    background: #f8fafc;
    font-weight: 600 !important;
}

.sg-setting-switch strong {
    display: block;
    font-size: 0.92rem;
    color: var(--sg-ink);
}

.sg-setting-switch small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.sg-setting-switch input {
    flex: 0 0 auto;
    width: 44px;
    height: 24px;
    appearance: none;
    border-radius: 999px;
    background: #cbd5e1;
    position: relative;
    cursor: pointer;
    transition: background 0.2s ease;
}

.sg-setting-switch input::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18);
    transition: transform 0.2s ease;
}

.sg-setting-switch input:checked {
    background: var(--sg-primary);
}

.sg-setting-switch input:checked::before {
    transform: translateX(20px);
}

.sg-settings-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
}

.sg-settings-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 9px;
    border-radius: 8px;
    background: #ecfdf5;
    color: #047857;
    font-size: 0.78rem;
    font-weight: 800;
}

.sg-check {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center;
    gap: 2px;
}

.sg-check input {
    width: 18px;
    height: 18px;
    accent-color: var(--sg-primary);
}

.sg-map-picker {
    display: grid;
    gap: 2px;
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 10px;
    background: #f8fafc;
}

.sg-map-picker-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2px;
}

.sg-map-picker-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    justify-content: flex-end;
}

.sg-map-picker-head strong,
.sg-map-picker-head small,
.sg-map-status {
    display: block;
}

.sg-map-picker-head strong {
    color: var(--sg-ink);
    font-size: .92rem;
}

.sg-map-picker-head small,
.sg-map-status {
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

.sg-map-canvas {
    overflow: hidden;
    height: 260px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: #e2e8f0;
}

.sg-address-list {
    display: grid;
    gap: 2px;
}

.sg-address-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-address-card p {
    margin: 2px 0 0;
    color: var(--sg-muted);
    line-height: 1.4;
}

.sg-address-card small {
    display: block;
    margin-top: 2px;
    color: var(--sg-muted);
    font-size: .72rem;
}

.sg-address-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 7px;
}

.sg-address-actions form,
.sg-cancel-form {
    margin: 0;
}

.sg-cancel-form {
    margin-top: 14px;
}

.sg-order-cancel-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 100%;
    border-color: #dc2626;
    background: #dc2626;
    color: #ffffff;
    font-weight: 700;
}

.sg-order-cancel-button:hover,
.sg-order-cancel-button:focus {
    border-color: #b91c1c;
    background: #b91c1c;
    color: #ffffff;
}

.sg-business-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
    margin-top: 14px;
}

.sg-business-actions form {
    margin: 0;
}

.sg-business-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    justify-content: center;
    width: 100%;
}

.sg-business-order-detail .sg-cart-summary dl {
    display: grid;
    gap: 8px 10px;
    grid-template-columns: minmax(80px, .6fr) minmax(0, 1fr);
}

.sg-business-order-detail .sg-cart-summary .sg-business-order-summary-list {
    gap: 7px 12px;
    grid-template-columns: minmax(88px, .62fr) minmax(0, 1fr);
    margin: 0 0 12px;
}

.sg-business-order-detail .sg-cart-summary dt,
.sg-business-order-detail .sg-cart-summary dd {
    margin: 0;
    min-width: 0;
}

.sg-business-order-detail .sg-cart-summary dt {
    color: var(--sg-muted);
    font-size: .76rem;
    font-weight: 650;
    letter-spacing: 0;
}

.sg-business-order-detail .sg-cart-summary dd {
    color: var(--sg-ink);
    font-size: .82rem;
    font-weight: 600;
    overflow-wrap: anywhere;
    text-align: right;
}

.sg-business-order-detail .sg-cart-summary .sg-business-order-total-label,
.sg-business-order-detail .sg-cart-summary .sg-business-order-total {
    border-top: 1px solid var(--sg-border);
    margin-top: 2px;
    padding-top: 8px;
}

.sg-business-order-detail .sg-cart-summary .sg-business-order-payable-label,
.sg-business-order-detail .sg-cart-summary .sg-business-order-payable {
    align-self: center;
}

.sg-business-order-detail .sg-cart-summary .sg-business-order-total,
.sg-business-order-detail .sg-cart-summary .sg-business-order-payable {
    font-size: .88rem;
    font-weight: 700;
}

.sg-business-order-detail .sg-cart-summary .sg-business-order-payable {
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 7px;
    color: #9a3412;
    display: inline-flex;
    justify-content: center;
    justify-self: end;
    line-height: 1;
    min-width: 92px;
    padding: 7px 9px;
    text-align: center;
}

.sg-business-order-timeline {
    display: grid;
    gap: 2px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 12px 0;
}

.sg-business-order-timeline span {
    align-items: center;
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    color: var(--sg-muted);
    display: flex;
    gap: 7px;
    justify-content: center;
    min-height: 38px;
    padding: 2px;
}

.sg-business-order-timeline span.is-active {
    background: #0f766e;
    border-color: #0b5f59;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(15, 118, 110, .14);
}

.sg-business-order-timeline span.is-active i,
.sg-business-order-timeline span.is-active b {
    color: #ffffff;
}

.sg-business-order-timeline b {
    font-size: .78rem;
    white-space: nowrap;
}

.sg-courier-card {
    border-left: 4px solid var(--sg-primary);
}

.sg-courier-route {
    display: grid;
    gap: 2px;
    margin-bottom: 2px;
}

.sg-courier-detail-layout {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
}

.sg-courier-detail-main > .sg-panel-title-row {
    align-items: center;
    gap: 2px;
    margin-bottom: 10px;
}

.sg-courier-detail-main .sg-panel-title span {
    font-size: .68rem;
    line-height: 1;
}

.sg-courier-detail-main .sg-panel-title h1 {
    font-size: clamp(1rem, 2.2vw, 1.25rem);
    line-height: 1.12;
    margin: 3px 0 0;
}

.sg-courier-detail-main .sg-panel-title p {
    font-size: .76rem;
    line-height: 1.2;
    margin: 4px 0 0;
}

.sg-courier-detail-main .sg-courier-total {
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
    color: #9a3412;
    font-size: .92rem;
    line-height: 1;
    padding: 8px 10px;
    white-space: nowrap;
}

.sg-courier-contact-strip {
    align-items: center;
    background: #f8fafc;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: flex;
    gap: 2px;
    justify-content: flex-start;
    margin: 0 0 10px;
    padding: 7px;
}

.sg-courier-contact-strip .sg-icon-button {
    flex: 0 0 auto;
}

.sg-courier-route > div {
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
}

.sg-courier-route span {
    display: block;
    margin-bottom: 5px;
    color: var(--sg-primary);
    font-size: .76rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-courier-route p {
    margin: 2px 0 0;
    color: var(--sg-muted);
    line-height: 1.5;
}

.sg-courier-detail-items {
    gap: 2px;
}

.sg-courier-detail-items .sg-cart-item {
    align-items: center;
    border-radius: 8px;
    padding: 9px 10px;
}

.sg-courier-detail-items .sg-cart-item h2 {
    font-size: .9rem;
    line-height: 1.2;
}

.sg-courier-detail-items .sg-cart-item p {
    font-size: .76rem;
    line-height: 1.25;
}

.sg-courier-detail-items .sg-cart-item > strong {
    font-size: .84rem;
    white-space: nowrap;
}

.sg-courier-detail-map-card {
    margin: 0 0 10px;
}

.sg-courier-detail-map-card .sg-courier-live-map {
    height: 190px;
}

.sg-courier-detail-layout .sg-cart-summary dl {
    display: grid;
    gap: 7px 10px;
    grid-template-columns: minmax(92px, .72fr) minmax(0, 1fr);
}

.sg-courier-detail-layout .sg-cart-summary dt,
.sg-courier-detail-layout .sg-cart-summary dd {
    margin: 0;
    min-width: 0;
}

.sg-courier-detail-layout .sg-cart-summary dt {
    color: var(--sg-muted);
    font-size: .74rem;
    font-weight: 700;
}

.sg-courier-detail-layout .sg-cart-summary dd {
    color: var(--sg-text);
    font-size: .8rem;
    font-weight: 650;
    overflow-wrap: anywhere;
    text-align: right;
}

.sg-courier-detail-layout .sg-business-actions {
    grid-template-columns: 1fr;
}

.sg-courier-payment-card,
.sg-courier-pin-card {
    align-items: flex-start;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: flex;
    gap: 2px;
    margin: 10px 0;
    padding: 9px 10px;
}

.sg-courier-payment-card i,
.sg-courier-pin-card i {
    align-items: center;
    border-radius: 8px;
    display: inline-flex;
    flex: 0 0 30px;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.sg-courier-payment-card strong,
.sg-courier-payment-card span,
.sg-courier-pin-card strong,
.sg-courier-pin-card span {
    display: block;
    line-height: 1.25;
}

.sg-courier-payment-card strong,
.sg-courier-pin-card strong {
    color: var(--sg-text);
    font-size: .82rem;
    font-weight: 850;
}

.sg-courier-payment-card span,
.sg-courier-pin-card span {
    color: var(--sg-muted);
    font-size: .74rem;
    margin-top: 2px;
}

.sg-courier-payment-card.is-cash {
    background: #f0fdfa;
    border-color: #99f6e4;
}

.sg-courier-payment-card.is-cash i {
    background: #ccfbf1;
    color: #134e4a;
}

.sg-courier-payment-card.is-paid,
.sg-courier-pin-card {
    background: #f0fdf4;
    border-color: #bbf7d0;
}

.sg-courier-payment-card.is-paid i,
.sg-courier-pin-card i {
    background: #dcfce7;
    color: #15803d;
}

.sg-courier-delivery-checklist {
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    margin: 10px 0;
    padding: 2px;
}

.sg-courier-delivery-checklist > strong {
    color: var(--sg-text);
    font-size: .82rem;
    line-height: 1.15;
}

.sg-courier-delivery-checklist span {
    align-items: center;
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    color: var(--sg-muted);
    display: flex;
    font-size: .74rem;
    font-weight: 750;
    gap: 7px;
    min-height: 30px;
    padding: 6px 8px;
}

.sg-courier-delivery-checklist span.is-done {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #166534;
}

.sg-courier-delivery-checklist span.is-warn {
    background: #f0fdfa;
    border-color: #99f6e4;
    color: #9a3412;
}

.sg-courier-pin-input {
    gap: 4px !important;
}

.sg-courier-pin-input input {
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 2px;
    text-align: center;
}

.sg-courier-pin-input small {
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.2;
}

body.sg-theme-koyu .sg-courier-delivery-checklist,
body.sg-theme-koyu .sg-courier-delivery-checklist span {
    border-color: rgba(148, 163, 184, .22);
    background: #111827;
}

body.sg-theme-koyu .sg-courier-delivery-checklist > strong {
    color: #f8fafc;
}

.sg-courier-step-form .btn {
    align-items: center;
    display: inline-flex;
    gap: 2px;
    justify-content: center;
    min-height: 38px;
}

.sg-courier-total {
    align-items: center;
    background: rgba(0, 168, 132, .12);
    border: 1px solid rgba(0, 168, 132, .22);
    border-radius: 8px;
    color: var(--sg-primary);
    display: inline-flex;
    font-size: .95rem;
    font-weight: 900;
    min-height: 34px;
    padding: 6px 10px;
    white-space: nowrap;
}

.sg-courier-timeline {
    display: grid;
    gap: 2px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 10px 0 12px;
}

.sg-courier-timeline span {
    align-items: center;
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-muted);
    display: inline-flex;
    font-size: .74rem;
    font-weight: 850;
    gap: 2px;
    justify-content: center;
    min-height: 34px;
    min-width: 0;
    opacity: .48;
    padding: 6px;
    text-align: center;
}

.sg-courier-timeline span.is-waiting {
    background: #f8fafc;
    border-color: #e2e8f0;
    color: #94a3b8;
    filter: grayscale(.25);
}

.sg-courier-timeline span.is-current {
    background: #fff7ed;
    border-color: #fb923c;
    box-shadow: 0 8px 18px rgba(249, 115, 22, .14);
    color: #9a3412;
    opacity: 1;
}

.sg-courier-timeline span.is-done {
    background: rgba(22, 163, 74, .1);
    border-color: rgba(22, 163, 74, .22);
    color: #15803d;
    opacity: 1;
}

.sg-courier-timeline span.is-done i,
.sg-courier-timeline span.is-current i {
    color: currentColor;
}

.sg-courier-route {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-courier-action-strip {
    display: grid;
    gap: 2px;
    grid-template-columns: repeat(4, 36px);
    justify-content: start;
    margin-bottom: 2px;
}

.sg-courier-action-strip .sg-icon-button {
    height: 36px;
    width: 36px;
}

.sg-courier-step-form {
    display: grid;
    gap: 2px;
}

.sg-courier-step-form label {
    display: grid;
    gap: 2px;
    margin: 0;
}

.sg-courier-step-form label span {
    color: var(--sg-muted);
    font-size: .76rem;
    font-weight: 850;
}

.sg-courier-reject-box {
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    padding: 0;
}

.sg-courier-reject-box summary {
    align-items: center;
    color: var(--sg-muted);
    cursor: pointer;
    display: flex;
    font-size: .84rem;
    font-weight: 850;
    gap: 7px;
    min-height: 38px;
    padding: 8px 10px;
}

.sg-courier-reject-box form {
    border-top: 1px solid var(--sg-border);
    display: grid;
    gap: 2px;
    padding: 2px;
}

.sg-courier-reject-box label {
    display: grid;
    gap: 2px;
    margin: 0;
}

.sg-courier-reject-box label span {
    color: var(--sg-muted);
    font-size: .76rem;
    font-weight: 850;
}

[data-theme="dark"] .sg-courier-route > div {
    background: var(--sg-surface-soft);
}

[data-theme="dark"] .sg-courier-total {
    background: rgba(0, 168, 132, .2);
    color: #f0fdfa;
}

[data-theme="dark"] .sg-courier-timeline span.is-done {
    background: rgba(34, 197, 94, .18);
    color: #bbf7d0;
}

[data-theme="dark"] .sg-courier-timeline span.is-waiting {
    background: rgba(15, 23, 42, .74);
    border-color: rgba(148, 163, 184, .22);
    color: #64748b;
}

[data-theme="dark"] .sg-courier-timeline span.is-current {
    background: rgba(249, 115, 22, .2);
    border-color: rgba(251, 146, 60, .55);
    color: #fed7aa;
}

@media (max-width: 575.98px) {
    html {
        font-size: 14px;
    }

    .container {
        width: min(100% - 16px, 1120px);
    }

    .sg-main-shell {
        padding: 12px;
        border-radius: 8px;
        box-shadow: 0 8px 22px rgba(15, 23, 42, .05);
    }

    .navbar {
        min-height: 56px;
    }

    .navbar-brand {
        gap: 2px;
        font-size: .9rem;
    }

    .sg-header .d-flex.align-items-center {
        gap: 5px !important;
        flex-wrap: nowrap;
    }

    .sg-header .btn-sm {
        width: 32px;
        min-width: 32px;
        height: 32px;
        justify-content: center;
        padding: 0;
        overflow: hidden;
        font-size: 0;
    }

    .sg-header .btn-sm i {
        font-size: .95rem;
    }

    .sg-logo {
        width: 30px;
        height: 30px;
        border-radius: 8px;
    }

    .sg-page {
        min-height: 0;
    }

    .sg-hero {
        padding: 24px 0 22px;
    }

    .sg-kicker {
        margin-bottom: 8px;
        font-size: .64rem;
    }

    .sg-hero h1 {
        font-size: 1.55rem;
        line-height: 1.14;
    }

    .sg-hero p {
        margin-top: 10px;
        font-size: .86rem;
        line-height: 1.45;
    }

    .sg-search {
        flex-direction: column;
        gap: 2px;
        margin-top: 16px;
        padding: 7px;
        border-radius: 10px;
    }

    .sg-search .btn {
        width: 100%;
    }

    .sg-home-location,
    .sg-map-picker-head {
        align-items: stretch;
        flex-direction: column;
    }

    .sg-nearby-searchbar {
        grid-template-columns: 32px minmax(0, 1fr);
        gap: 14px;
    }

    .sg-nearby-topbar {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .sg-nearby-searchbar .sg-page-nav,
    .sg-nearby-topbar .sg-page-nav {
        margin: 0;
    }

    .sg-nearby-location {
        grid-column: 1 / -1;
        width: 100%;
        max-width: none;
        flex-direction: row;
        align-items: center;
        margin-top: 0;
        padding: 7px 8px;
    }

    .sg-nearby-location > div {
        min-width: 0;
    }

    .sg-nearby-location small {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sg-nearby-location .btn {
        width: auto;
        min-width: 34px;
        flex: 0 0 auto;
        padding-inline: 2px;
    }

    .sg-home-location .btn,
    .sg-map-picker-head .btn {
        width: 100%;
    }

    .sg-map-picker-actions {
        width: 100%;
    }

    .sg-nearby-location .btn {
        width: auto;
    }

    .sg-map-canvas {
        height: 220px;
    }

    .sg-section {
        padding: 20px 0 28px;
    }

    .sg-section-title {
        margin-bottom: 2px;
    }

    .sg-back-link {
        width: 32px;
        height: 32px;
        justify-content: center;
        min-height: 30px;
        margin-bottom: 0;
        padding: 0;
        border-radius: 7px;
        font-size: .86rem;
    }

    .sg-back-link .sg-icon-link-text {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    .sg-section-title span,
    .sg-status-card span {
        font-size: .64rem;
    }

    .sg-section-title h2 {
        font-size: .98rem;
    }

    .sg-category {
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 2px;
        min-height: 86px;
        padding: 12px;
    }

    .sg-category img {
        width: 52px;
        height: 52px;
    }

    .sg-feature h3 {
        margin-bottom: 5px;
        font-size: .84rem;
    }

    .sg-feature p {
        font-size: .76rem;
        line-height: 1.35;
    }

    .sg-store {
        grid-template-columns: 92px minmax(0, 1fr);
        min-height: 112px;
    }

    .sg-store > img {
        min-height: 112px;
    }

    .sg-store-body {
        padding: 2px;
    }

    .sg-store h3,
    .sg-product h3 {
        font-size: .84rem;
    }

    .sg-store p,
    .sg-product p {
        font-size: .74rem;
        line-height: 1.36;
    }

    .sg-meta {
        gap: 2px;
        margin-top: 8px;
    }

    .sg-meta span {
        min-height: 20px;
        padding: 3px 5px;
        border-radius: 5px;
        font-size: .62rem;
    }

    .sg-product img {
        height: 106px;
    }

    .sg-product div {
        padding: 2px;
    }

    .sg-price {
        gap: 2px;
        margin-top: 8px;
    }

    .sg-price strong {
        font-size: .82rem;
    }

    .sg-price del,
    .sg-price span {
        font-size: .64rem;
    }

    .sg-store-shell {
        grid-template-columns: 1fr;
        gap: 2px;
        padding: 2px;
    }

    .sg-store-cover img {
        height: 118px;
    }

    .sg-store-info h1 {
        font-size: 1.18rem;
    }

    .sg-store-title-row {
        grid-template-columns: minmax(0, 1fr) 32px;
        gap: 2px;
    }

    .sg-store-info p {
        font-size: .8rem;
        line-height: 1.4;
    }

    .sg-store-badges,
    .sg-menu-flags {
        gap: 2px;
        margin-top: 10px;
    }

    .sg-badge,
    .sg-menu-flags span {
        min-height: 20px;
        padding: 3px 5px;
        border-radius: 5px;
        font-size: .61rem;
    }

    .sg-customizable-badge {
        min-height: 17px;
        padding: 2px 5px;
        font-size: .55rem;
    }

    .sg-panel {
        padding: 2px;
        margin-bottom: 2px;
    }

    .sg-panel-title {
        align-items: start;
        display: grid;
        gap: 2px;
        grid-template-columns: minmax(0, 1fr);
        margin-bottom: 7px;
        padding: 7px 8px;
    }

    .sg-panel-title span {
        margin-bottom: 0;
        max-width: 100%;
        overflow: hidden;
        padding: 2px 5px;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: .54rem;
    }

    .sg-panel-title h1,
    .sg-panel-title h2 {
        margin: 0;
        font-size: .86rem;
        line-height: 1.14;
        overflow-wrap: anywhere;
    }

    .sg-panel-title p {
        display: -webkit-box;
        font-size: .68rem;
        line-height: 1.25;
        margin-top: 1px;
        max-width: 100%;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .sg-panel-title-action {
        align-items: center;
        display: grid;
        gap: 2px;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sg-panel-title-action .btn {
        min-height: 32px;
        padding: 6px 7px;
        font-size: .72rem;
    }

    .sg-menu-section summary {
        padding: 9px 10px;
        font-size: .86rem;
    }

    .sg-menu-category-title {
        gap: 0;
    }

    .sg-menu-category-title strong {
        font-size: .84rem;
    }

    .sg-menu-item {
        grid-template-columns: 70px minmax(0, 1fr) 28px;
        gap: 7px;
        padding: 2px;
    }

    .sg-menu-item img {
        width: 70px;
        height: 64px;
    }

    .sg-menu-item-head {
        display: block;
    }

    .sg-menu-item h3 {
        font-size: .82rem;
    }

    .sg-menu-item p {
        margin-top: 2px;
        font-size: .72rem;
        line-height: 1.34;
    }

    .sg-menu-price {
        justify-content: flex-start;
        min-width: 0;
        margin-top: 2px;
        text-align: left;
    }

    .sg-menu-price strong {
        font-size: .78rem;
    }

    .sg-menu-price del,
    .sg-menu-price span {
        font-size: .62rem;
    }

    .sg-product-actions .btn {
        width: 26px;
        height: 26px;
        font-size: .84rem;
    }

    .sg-product-actions .sg-fav-button {
        width: 26px;
        min-height: 26px;
        padding: 0;
        overflow: hidden;
        font-size: 0;
    }
    .sg-product-actions .sg-fav-button {
        height: 26px;
        font-size: .78rem;
    }

    .sg-product-actions .sg-fav-button::before {
        content: none;
    }

    .sg-cart-layout {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .sg-cart-item {
        align-items: flex-start;
        padding: 2px;
    }

    .sg-cart-item,
    .sg-cart-item-actions {
        flex-direction: column;
        align-items: flex-start;
    }

    .sg-order-card {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: flex-start;
        padding: 2px;
    }

    .sg-order-card > .bi-chevron-right {
        display: none;
    }

    .sg-order-card h2 {
        font-size: .86rem;
    }

    .sg-order-card p,
    .sg-cart-item p,
    .sg-address-card p {
        font-size: .74rem;
    }

    .sg-cart-summary dl {
        gap: 2px;
        font-size: .82rem;
    }

    .sg-tip-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-account-layout,
    .sg-form-grid {
        grid-template-columns: 1fr;
    }

    .sg-account-layout {
        padding-bottom: 76px;
    }

    .sg-account-hero {
        padding-top: 14px;
    }

    .sg-account-hero-card {
        grid-template-columns: 44px minmax(0, 1fr) 34px;
        gap: 2px;
        padding: 12px;
        align-items: start;
    }

    .sg-account-avatar {
        width: 44px;
        height: 44px;
        font-size: 1rem;
    }

    .sg-account-identity h1 {
        font-size: 1rem;
    }

    .sg-account-identity p {
        font-size: .74rem;
    }

    .sg-account-logout {
        grid-column: 3;
        grid-row: 1;
        align-self: start;
        justify-self: end;
    }

    .sg-account-logout .btn {
        width: 32px;
        height: 32px;
        justify-content: center;
        padding: 0;
        overflow: hidden;
        font-size: 0;
    }

    .sg-account-logout .btn i {
        font-size: 1rem;
    }

    .sg-account-logout .btn span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    .sg-account-menu {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 40;
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: 72px;
        gap: 2px;
        max-width: 100vw;
        padding: 8px 8px calc(8px + env(safe-area-inset-bottom));
        border-width: 1px 0 0;
        border-radius: 16px 16px 0 0;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        box-shadow: 0 -10px 28px rgba(15, 23, 42, .12);
        scrollbar-width: none;
    }

    .sg-account-menu::-webkit-scrollbar {
        display: none;
    }

    .sg-account-menu a,
    .sg-account-menu button {
        grid-template-columns: 1fr;
        grid-template-areas:
            "icon"
            "title";
        justify-items: center;
        min-width: 0;
        min-height: 54px;
        padding: 6px 4px;
        border-color: transparent;
        background: transparent;
        font-size: .72rem;
        text-align: center;
    }

    .sg-account-menu a > span {
        width: 24px;
        height: 24px;
        border-radius: 7px;
    }

    .sg-account-menu a > strong {
        max-width: 64px;
        font-size: .64rem;
        line-height: 1.12;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .sg-account-menu a > small {
        display: none;
    }

    .sg-account-main {
        gap: 2px;
    }

    .sg-account-stats,
    .sg-account-card-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .sg-wallet-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 2px;
    }

    .sg-wallet-stats article {
        min-height: 68px;
        padding: 8px 6px;
        border-radius: 8px;
    }

    .sg-wallet-stats span {
        font-size: .62rem;
        line-height: 1.1;
    }

    .sg-wallet-stats strong {
        margin-top: 2px;
        font-size: .88rem;
        line-height: 1.1;
        white-space: nowrap;
    }

    .sg-wallet-stats small {
        margin-top: 2px;
        font-size: .58rem;
        line-height: 1.05;
    }

    .sg-account-order-list a {
        grid-template-columns: 32px minmax(0, 1fr) auto;
        gap: 2px;
        min-height: 54px;
        padding: 2px;
    }

    .sg-account-order-icon {
        width: 32px;
        height: 32px;
        font-size: .88rem;
    }

    .sg-account-order-body strong {
        font-size: .76rem;
    }

    .sg-account-order-body small {
        font-size: .64rem;
    }

    .sg-account-order-total {
        padding: 5px 6px;
        font-size: .68rem;
    }

    .sg-account-order-list a > .bi-chevron-right {
        display: none;
    }

    .sg-clickable-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-clickable-stats a {
        padding: 2px;
    }

    .sg-clickable-stats a > strong {
        font-size: .9rem;
    }

    .sg-bar-row {
        grid-template-columns: 58px minmax(0, 1fr) 52px;
        gap: 7px;
    }

    .sg-stat-list a {
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 2px;
    }

    .sg-stat-list a > i {
        display: none;
    }

    .sg-location-summary,
    .sg-location-empty {
        grid-template-columns: 36px minmax(0, 1fr);
        align-items: flex-start;
    }

    .sg-location-pin,
    .sg-location-empty > i {
        width: 36px;
        height: 36px;
        border-radius: 9px;
        font-size: .95rem;
    }

    .sg-location-summary > .sg-icon-button,
    .sg-location-empty > .btn {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .sg-location-map {
        height: 150px;
    }

    .sg-account-stats article,
    .sg-account-item-card {
        padding: 2px;
    }

    .sg-account-item-card {
        grid-template-columns: 32px minmax(0, 1fr) 12px;
    }

    .sg-account-item-card > span {
        width: 32px;
        height: 32px;
    }

    .sg-account-item-card strong {
        font-size: .82rem;
    }

    .sg-account-item-card small,
    .sg-mini-order-list small,
    .sg-wallet-row small,
    .sg-favorite-card small {
        font-size: .66rem;
    }

    .sg-wallet-row,
    .sg-favorite-card {
        padding: 2px;
    }

    .sg-wallet-row {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .sg-wallet-deposit {
        grid-template-columns: 1fr;
    }

    .sg-active-order {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .sg-wallet-row > div:last-child {
        text-align: left;
    }

    .sg-favorite-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .sg-favorite-card > a {
        grid-template-columns: 58px minmax(0, 1fr);
    }

    .sg-favorite-card img {
        width: 58px;
        height: 52px;
    }

    .sg-favorite-card strong {
        font-size: .8rem;
    }

    .sg-account-summary {
        padding: 2px;
    }

    .sg-account-summary strong {
        font-size: .9rem;
    }

    .sg-account-form {
        gap: 2px;
        margin-top: 12px;
    }

    .sg-account-form label {
        gap: 2px;
        font-size: .82rem;
    }

    .sg-auth-card,
    .sg-result-card {
        padding: 14px;
    }

    .sg-auth-page {
        background: #fff;
    }

    .sg-auth-section {
        align-items: stretch;
        padding: 8px 0 0;
        background: #fff;
    }

    .sg-auth-section .container {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding-inline: 10px;
        display: flex;
        justify-content: center;
        overflow: hidden;
        min-width: 0;
    }

    .sg-auth-card {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding: 16px 12px;
        border-radius: 8px;
        box-shadow: none;
    }

    .sg-auth-card .sg-panel-title {
        margin-bottom: 2px;
    }

    .sg-auth-card .sg-panel-title h1 {
        font-size: 1.18rem;
        line-height: 1.18;
    }

    .sg-auth-shell {
        grid-template-columns: 1fr;
        gap: 2px;
        max-width: 520px;
        width: 100%;
    }

    .sg-auth-card-modern {
        min-height: auto;
    }

    .sg-auth-visual {
        display: none;
    }

    .sg-auth-form {
        gap: 2px;
    }

    .sg-auth-form .form-control {
        min-height: 46px;
        width: 100%;
        font-size: .92rem;
    }

    .sg-auth-form .btn {
        min-height: 46px;
        width: 100%;
    }

    .sg-auth-row,
    .sg-auth-switch {
        align-items: center;
    }

    .sg-auth-row {
        position: relative;
        display: flex;
        justify-content: flex-start;
        gap: 2px;
        width: 100%;
        min-width: 0;
        padding-right: 112px;
    }

    .sg-auth-row a {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        max-width: 108px;
        overflow: hidden;
        font-size: .78rem;
        text-align: right;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sg-auth-switch {
        align-items: flex-start;
        flex-direction: column;
    }

    .sg-captcha-row {
        grid-template-columns: 1fr;
    }

    .sg-address-card {
        grid-template-columns: 1fr;
        align-items: flex-start;
        padding: 2px;
    }

    .sg-address-actions {
        justify-content: flex-start;
        width: 100%;
    }

    .sg-footer-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .sg-footer {
        margin-top: 20px;
        padding: 26px 0 16px;
    }

    .sg-visitor-prompts {
        left: 8px;
        right: 8px;
        bottom: 74px;
        max-width: none;
        gap: 2px;
    }

    .sg-visitor-prompt {
        display: grid;
        grid-template-columns: 34px minmax(0, 1fr);
        align-items: flex-start;
        gap: 2px;
        padding: 2px;
    }

    .sg-visitor-prompt-icon {
        width: 34px;
        height: 34px;
        border-radius: 8px;
        font-size: 1rem;
    }

    .sg-visitor-prompt-body {
        max-width: 100%;
    }

    .sg-visitor-prompt-actions {
        grid-column: 1 / -1;
        width: 100%;
        justify-content: flex-end;
    }

    .sg-visitor-prompt-actions .btn {
        min-height: 32px;
        padding: 5px 9px;
    }

    .sg-footer a,
    .sg-footer p {
        font-size: .78rem;
    }

    .sg-floating-cart {
        left: 14px;
        right: 14px;
        justify-content: center;
        border-radius: 10px;
        padding: 2px;
        font-size: .86rem;
    }
}

@media (max-width: 767.98px) {
    .sg-account-layout {
        grid-template-columns: 1fr;
        padding-bottom: 76px;
    }

    .sg-account-menu {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 40;
        display: grid;
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: 72px;
        gap: 2px;
        max-width: 100vw;
        padding: 8px 8px calc(8px + env(safe-area-inset-bottom));
        border-width: 1px 0 0;
        border-radius: 16px 16px 0 0;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        box-shadow: 0 -10px 28px rgba(15, 23, 42, .12);
        scrollbar-width: none;
    }

    .sg-account-menu::-webkit-scrollbar {
        display: none;
    }

    .sg-account-menu a,
    .sg-account-menu button {
        grid-template-columns: 1fr;
        grid-template-areas:
            "icon"
            "title";
        justify-items: center;
        min-height: 54px;
        padding: 6px 4px;
        border-color: transparent;
        background: transparent;
        text-align: center;
    }

    .sg-account-menu a > span {
        width: 24px;
        height: 24px;
    }

    .sg-account-menu a > strong {
        max-width: 64px;
        font-size: .64rem;
        line-height: 1.12;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .sg-account-menu a > small {
        display: none;
    }
}

@media (max-width: 767.98px) {
    body:has(.sg-account-mobile-nav) {
        padding-bottom: calc(68px + env(safe-area-inset-bottom));
    }

    .sg-account-layout {
        padding-bottom: 0;
    }

    .sg-account-menu-toggle,
    .sg-account-menu-close-tab {
        position: fixed;
        top: 46%;
        right: 0;
        transform: translateY(-50%);
        z-index: 67;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 2px;
        width: 38px;
        min-width: 38px;
        height: 52px;
        padding: 0;
        border: 1px solid rgba(0, 168, 132, .34);
        border-right: 0;
        border-radius: 8px 0 0 8px;
        color: #fff;
        background: var(--sg-primary);
        box-shadow: -8px 8px 22px rgba(15, 23, 42, .14);
        font-size: .62rem;
        font-weight: 800;
        line-height: 1;
        text-transform: uppercase;
    }

    .sg-account-menu-close-tab {
        z-index: 68;
        right: min(88vw, 330px);
        border-right: 1px solid rgba(0, 168, 132, .34);
        border-left: 0;
        border-radius: 0 8px 8px 0;
        box-shadow: 8px 8px 22px rgba(15, 23, 42, .14);
    }

    .sg-account-menu-close-tab[hidden] {
        display: none !important;
    }

    .sg-account-menu-toggle i,
    .sg-account-menu-close-tab i {
        font-size: 1.28rem;
        line-height: 1;
    }

    .sg-account-menu-toggle span,
    .sg-account-menu-close-tab span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    body.sg-account-menu-open .sg-account-menu-toggle {
        display: none;
    }

    .sg-account-menu-backdrop {
        position: fixed;
        inset: 0;
        z-index: 64;
        display: block;
        background: rgba(15, 23, 42, .36);
        backdrop-filter: blur(2px);
    }

    .sg-account-menu-backdrop[hidden] {
        display: none !important;
    }

    .sg-account-menu {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        left: auto;
        z-index: 66;
        width: min(88vw, 330px);
        max-width: 330px;
        height: 100dvh;
        max-height: 100dvh;
        display: grid;
        align-content: start;
        grid-template-columns: 1fr;
        grid-auto-flow: row;
        grid-auto-columns: auto;
        grid-auto-rows: min-content;
        gap: 2px;
        padding: calc(16px + env(safe-area-inset-top)) 12px 16px;
        border-width: 0 0 0 1px;
        border-radius: 12px 0 0 12px;
        background: #fff;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        visibility: hidden;
        pointer-events: none;
        transform: translateX(calc(100% + 18px));
        transition: transform .22s ease;
        box-shadow: -18px 0 42px rgba(15, 23, 42, .2);
        scrollbar-width: thin;
    }

    .sg-account-menu.is-open {
        visibility: visible;
        pointer-events: auto;
        transform: translateX(0);
    }

    .sg-account-menu a,
    .sg-account-menu button {
        grid-template-columns: 32px minmax(0, 1fr);
        grid-template-areas:
            "icon title"
            "icon text";
        justify-items: start;
        align-items: center;
        min-width: 0;
        min-height: 52px;
        padding: 9px 10px;
        border-color: var(--sg-border);
        border-radius: 8px;
        background: #fff;
        text-align: left;
    }

    .sg-account-menu a > span {
        grid-area: icon;
        width: 30px;
        height: 30px;
        border-radius: 8px;
    }

    .sg-account-menu a > strong {
        grid-area: title;
        max-width: 100%;
        min-width: 0;
        font-size: .82rem;
        line-height: 1.18;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .sg-account-menu a > small {
        grid-area: text;
        display: block;
        font-size: .66rem;
        line-height: 1.15;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .sg-account-mobile-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 60;
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 2px;
        padding: 5px 5px calc(5px + env(safe-area-inset-bottom));
        border-top: 1px solid var(--sg-border);
        background: rgba(255, 255, 255, .98);
        box-shadow: 0 -8px 22px rgba(15, 23, 42, .1);
        backdrop-filter: blur(12px);
    }

    .sg-account-mobile-nav a,
    .sg-account-mobile-nav button {
        position: relative;
        min-width: 0;
        min-height: 44px;
        display: grid;
        grid-template-rows: 18px auto;
        place-items: center;
        gap: 2px;
        padding: 4px 1px;
        border: 0;
        border-radius: 7px;
        color: #667085;
        background: transparent;
        font: inherit;
        font-size: .56rem;
        font-weight: 780;
        line-height: 1.05;
        text-align: center;
        text-decoration: none;
        cursor: pointer;
    }

    .sg-account-mobile-nav form {
        margin: 0;
        min-width: 0;
        width: 100%;
    }

    .sg-account-mobile-nav i {
        font-size: .92rem;
        line-height: 1;
    }

    .sg-account-mobile-nav span {
        display: block;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sg-account-mobile-nav a.is-active {
        color: var(--sg-primary);
        background: #f0fdfa;
    }

    .sg-account-mobile-nav button {
        width: 100%;
        color: #be123c;
    }

    .sg-account-mobile-nav .sg-cart-badge {
        position: absolute;
        top: 3px;
        right: 50%;
        transform: translateX(16px);
        min-width: 15px;
        height: 15px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 3px;
        border: 2px solid #fff;
        border-radius: 999px;
        color: #fff;
        background: #ef4444;
        font-size: .54rem;
        font-weight: 800;
        line-height: 1;
    }

    .sg-account-mobile-nav .sg-cart-badge[hidden] {
        display: none;
    }
}

@media (max-width: 767.98px) {
    body:has(.sg-home) {
        background: #f7f9fc;
    }

    body:has(.sg-home) .sg-header {
        position: relative;
        background: var(--sg-primary);
        border-bottom: 0;
        backdrop-filter: none;
    }

    body:has(.sg-home) .navbar {
        min-height: 58px;
        align-items: center;
        padding-top: 0;
    }

    body:has(.sg-home) .navbar .container {
        width: 100vw;
        max-width: 100vw;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 2px;
        padding: 0 16px;
        margin: 0;
    }

    body:has(.sg-home) .navbar-brand {
        flex: 1 1 auto;
        min-width: 0;
        color: #fff;
    }

    body:has(.sg-home) .sg-logo {
        color: var(--sg-primary);
        background: #fff;
    }

    body:has(.sg-home) .sg-header .btn-outline-secondary {
        border-color: rgba(255, 255, 255, .28);
        color: #fff;
        background: rgba(255, 255, 255, .1);
    }

    body:has(.sg-home) .sg-header .d-flex.align-items-center {
        display: flex !important;
        position: static;
        align-items: center;
        justify-content: flex-end;
        flex: 0 0 auto;
        gap: 6px !important;
        max-width: none;
        overflow: visible;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest {
        width: auto;
    }

    body:has(.sg-home) .sg-nav-actions.is-auth {
        width: auto;
    }

    body:has(.sg-home) .sg-header .btn-primary {
        border-color: #fff;
        color: var(--sg-primary);
        background: #fff;
    }

    body:has(.sg-home) .sg-header .btn-sm {
        width: 31px;
        min-width: 31px;
        height: 31px;
        min-height: 31px;
        justify-content: center;
        padding: 0;
        border-radius: 8px;
        overflow: hidden;
        font-size: 0;
    }

    body:has(.sg-home) .sg-header .btn-sm span:not(.sg-cart-badge) {
        display: none;
    }

    body:has(.sg-home) .sg-header .btn-sm i {
        font-size: .92rem;
    }

    body:has(.sg-home) .sg-nav-form {
        flex: 0 0 auto;
        width: 31px;
        margin: 0;
    }

    .sg-home {
        padding: 0 0 22px;
        background:
            linear-gradient(180deg, var(--sg-primary) 0 336px, #f7f9fc 336px 100%);
    }

    .sg-home-shell {
        padding: 12px 0 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .sg-home-head {
        grid-template-columns: 1fr;
        gap: 11px;
        margin-bottom: 5px;
        padding: 8px 2px 8px;
        color: #fff;
    }

    .sg-home-head span {
        color: rgba(255, 255, 255, .82);
    }

    .sg-home-copy {
        display: none;
    }

    .sg-mobile-welcome {
        display: block;
        position: relative;
        overflow: hidden;
        padding: 11px 12px;
        border: 1px solid rgba(255, 255, 255, .34);
        border-radius: 10px;
        background:
            linear-gradient(135deg, rgba(255, 247, 237, .96) 0%, rgba(240, 253, 244, .88) 56%, rgba(239, 246, 255, .92) 100%);
        box-shadow: 0 10px 22px rgba(16, 24, 40, .10);
    }

    .sg-mobile-welcome h1 {
        margin: 2px 0 0;
        font-size: 1.08rem;
    }

    .sg-home-search {
        min-height: 44px;
        padding-inline: 13px;
        border: 0;
        border-radius: 999px;
        box-shadow: 0 10px 22px rgba(15, 23, 42, .14);
    }

    .sg-home-search i {
        color: #475467;
    }

    .sg-home-search input {
        font-size: .82rem;
        font-weight: 600;
    }

    .sg-home-block-title {
        align-items: center;
        gap: 2px;
        margin-bottom: 5px;
        padding: 7px 8px;
        border-radius: 8px;
    }

    .sg-home-block-title h2 {
        font-size: .9rem;
        line-height: 1.15;
    }

    .sg-home-block-title span {
        font-size: .58rem;
        line-height: 1.1;
    }

    .sg-home-visitor-stack {
        gap: 2px;
        margin-inline: -8px;
    }

    .sg-promo-slider {
        grid-auto-columns: minmax(260px, 86%);
        gap: 2px;
        margin: 0;
        padding: 5px 8px 5px;
        scrollbar-width: none;
    }

    .sg-promo-slider::-webkit-scrollbar {
        display: none;
    }

    .sg-promo-slide {
        min-height: 150px;
        padding: 15px;
        border-radius: 10px;
        box-shadow: 0 14px 24px rgba(15, 23, 42, .16);
    }

    .sg-promo-slide strong {
        max-width: 86%;
        font-size: .94rem;
    }

    .sg-promo-slide small {
        max-width: 88%;
        font-size: .72rem;
    }

    .sg-promo-slide em {
        padding: 5px 8px;
        border-radius: 999px;
        font-size: .66rem;
    }

    .sg-home-category-panel {
        margin: 0 8px;
        padding: 13px 12px 12px;
        border-width: 1px;
        border-radius: 10px;
        box-shadow: 0 8px 20px rgba(15, 23, 42, .05);
    }

    .sg-category-circles {
        display: flex;
        gap: 2px;
        margin-inline: 0;
        padding: 2px 0 8px;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        scrollbar-width: none;
    }

    .sg-category-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 2px;
        margin-inline: -4px;
        margin-bottom: 2px;
        padding: 3px;
        overflow: visible;
    }

    .sg-category-tabs button {
        min-height: 50px;
        flex-direction: column;
        justify-content: center;
        gap: 2px;
        padding: 5px 2px;
        font-size: .54rem;
        white-space: normal;
    }

    .sg-category-tabs button span {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-align: center;
        line-height: 1.08;
    }

    .sg-category-tabs button i {
        flex: 0 0 auto;
        font-size: .82rem;
    }

    .sg-category-tab-note {
        margin-bottom: 7px;
        font-size: .7rem;
    }

    .sg-category-circles::-webkit-scrollbar {
        display: none;
    }

    .sg-category-circle {
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        gap: 2px;
        box-shadow: none;
    }

    .sg-category-circle > span {
        width: 58px;
        height: 58px;
        border-width: 2px;
        box-shadow: 0 8px 16px rgba(15, 23, 42, .08);
    }

    .sg-category-circle strong {
        font-size: .66rem;
        min-height: 26px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        white-space: normal;
    }

    .sg-category-circle small {
        font-size: .6rem;
    }

    .sg-home-block + .sg-home-block {
        margin-top: 2px;
    }

    .sg-home-block-title {
        align-items: flex-start;
        padding-inline: 0;
        margin-bottom: 5px;
    }

    .sg-home-block-title h2 {
        font-size: .95rem;
    }

    .sg-home-block-title .btn {
        min-height: 31px;
        padding: 6px 8px;
        font-size: .68rem;
    }

    .sg-store-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .sg-home-stores {
        margin: 2px 0 0;
        padding: 12px;
        border: 1px solid var(--sg-border);
        border-radius: 10px;
        background: #fff;
    }

    .sg-home-stores .sg-home-block-title {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 34px;
        align-items: center;
        gap: 2px;
    }

    .sg-home-stores .sg-home-block-title .btn {
        width: 34px;
        min-width: 34px;
        height: 34px;
        justify-content: center;
        padding: 0;
        overflow: hidden;
        font-size: 0;
    }

    .sg-home-stores .sg-home-block-title .btn i {
        font-size: .95rem;
    }
}

/* Cart page final overrides */
.sg-cart-main-panel,
.sg-cart-side {
    display: grid;
    gap: 2px;
}

.sg-cart-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
}

.sg-cart-store-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-cart-store-strip span {
    display: block;
    color: #134e4a;
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-cart-store-strip strong {
    display: block;
    color: var(--sg-text);
    font-size: .9rem;
}

.sg-empty-cart-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: 1.35rem;
}

.sg-cart-item {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px;
}

.sg-cart-item-image {
    width: 76px;
    height: 76px;
    object-fit: cover;
    border-radius: 8px;
    background: #f8fafc;
}

.sg-cart-item-body {
    min-width: 0;
}

.sg-cart-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 2px;
}

.sg-cart-item-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 1px 2px;
    border-radius: 6px;
    color: #475467;
    background: #f8fafc;
    font-size: .72rem;
    font-weight: 800;
}

.sg-cart-item-actions {
    min-width: 96px;
    align-self: stretch;
    display: grid;
    justify-items: end;
    align-content: center;
    gap: 2px;
}

.sg-cart-item-actions strong {
    color: var(--sg-text);
    font-size: .95rem;
    font-weight: 850;
    white-space: nowrap;
}

.sg-cart-qty {
    display: inline-grid;
    grid-template-columns: 28px 28px 28px;
    align-items: center;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.sg-cart-qty form,
.sg-cart-item-actions form {
    margin: 0;
}

.sg-cart-qty button,
.sg-cart-remove {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: #fff;
    color: var(--sg-text);
    font-size: .8rem;
}

.sg-cart-qty span {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-inline: 1px solid var(--sg-border);
    font-size: .72rem;
    font-weight: 800;
}

.sg-cart-remove {
    border: 1px solid #fee2e2;
    border-radius: 8px;
    color: #b42318;
}

.sg-cart-minimum {
    display: grid;
    gap: 2px;
    margin-bottom: 2px;
    padding: 2px;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    background: #f0fdfa;
}

.sg-cart-minimum.is-complete {
    border-color: #abefc6;
    background: #ecfdf3;
}

.sg-cart-minimum strong,
.sg-cart-minimum span {
    display: block;
}

.sg-cart-minimum strong {
    color: var(--sg-text);
    font-size: .76rem;
}

.sg-cart-minimum span {
    color: #667085;
    font-size: .69rem;
    font-weight: 650;
}

.sg-cart-progress {
    height: 6px;
    border-radius: 999px;
    background: rgba(0, 168, 132, .15);
    overflow: hidden;
}

.sg-cart-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--sg-primary);
}

.sg-cart-minimum.is-complete .sg-cart-progress {
    background: #d1fadf;
}

.sg-cart-minimum.is-complete .sg-cart-progress span {
    background: #12b76a;
}

.sg-cart-summary .sg-discount {
    color: #039855;
}

.sg-cart-summary .sg-cart-total {
    color: var(--sg-primary);
    font-size: .92rem;
}

.sg-cart-delivery {
    display: grid;
    gap: 2px;
}

.sg-cart-delivery p {
    margin: 0;
    color: var(--sg-muted);
    font-size: .8rem;
}

.sg-cart-address {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 2px;
    align-items: start;
    padding: 2px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-cart-address i {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--sg-primary);
    background: #f0fdfa;
}

.sg-cart-address strong,
.sg-cart-address span {
    display: block;
}

.sg-cart-address strong {
    font-size: .84rem;
}

.sg-cart-address span {
    color: var(--sg-muted);
    font-size: .76rem;
    line-height: 1.35;
}

@media (max-width: 767.98px) {
    .sg-cart-title-row {
        align-items: flex-start;
    }

    .sg-cart-title-row .btn {
        padding-inline: 2px;
        font-size: .72rem;
        white-space: nowrap;
    }

    .sg-cart-item {
        display: grid;
        grid-template-columns: 64px minmax(0, 1fr) 58px;
        gap: 2px;
        align-items: center;
        padding: 2px;
    }

    .sg-cart-item-image {
        width: 64px;
        height: 64px;
    }

    .sg-cart-item-actions {
        min-width: 58px;
        display: grid;
        flex-direction: initial;
        align-items: initial;
        justify-items: end;
        gap: 2px;
    }

    .sg-cart-item-actions strong {
        font-size: .74rem;
    }

    .sg-cart-qty {
        grid-template-columns: 22px 22px 22px;
    }

    .sg-cart-qty button,
    .sg-cart-remove,
    .sg-cart-qty span {
        width: 22px;
        height: 22px;
    }

    .sg-cart-item h2 {
        font-size: .76rem;
    }

    .sg-cart-item p {
        margin-top: 2px;
        font-size: .66rem;
        line-height: 1.2;
    }

    .sg-cart-item-meta {
        margin-top: 2px;
        gap: 2px;
    }

    .sg-cart-item-meta span {
        min-height: 18px;
        padding: 1px 2px;
        font-size: .61rem;
    }
}

/* Bootstrap icon polish */
.sg-meta span i,
.sg-store-badges span i,
.sg-home-location i,
.sg-nearby-location i,
.sg-cart-address i,
.sg-payment-step-title i,
.sg-settings-heading i,
.sg-mobile-status-grid i,
.sg-account-menu a > span i,
.sg-account-mobile-nav i,
.sg-back-link i,
.sg-stat-list a > i,
.sg-order-card > .bi-chevron-right {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.sg-meta span i,
.sg-store-badges span i {
    width: 14px;
    height: 14px;
    font-size: .76rem;
}

.sg-meta span .bi-geo-alt,
.sg-meta span .bi-geo-alt-fill,
.sg-store-badges span .bi-geo-alt,
.sg-store-badges span .bi-geo-alt-fill {
    color: #0f766e;
}

.sg-back-link i,
.sg-stat-list a > .bi-chevron-right,
.sg-order-card > .bi-chevron-right {
    width: 28px;
    height: 28px;
    border-radius: 7px;
    color: #475569;
    background: #f1f5f9;
    font-size: .82rem;
}

.sg-stat-list a > .bi-chevron-right,
.sg-order-card > .bi-chevron-right {
    justify-self: end;
}

.sg-back-link:hover i,
.sg-stat-list a:hover > .bi-chevron-right,
.sg-order-card:hover > .bi-chevron-right {
    color: #fff;
    background: var(--sg-primary);
}

.sg-account-mobile-nav i,
.sg-account-menu a > span i {
    width: 20px;
    height: 20px;
    font-size: 1rem;
}

body.sg-theme-koyu .sg-meta span i,
body.sg-theme-koyu .sg-store-badges span i {
    color: #99f6e4;
}

body.sg-theme-koyu :is(.sg-back-link i, .sg-stat-list a > .bi-chevron-right, .sg-order-card > .bi-chevron-right) {
    color: #dbeafe;
    background: #1f2937;
}

body.sg-theme-koyu :is(.sg-back-link:hover i, .sg-stat-list a:hover > .bi-chevron-right, .sg-order-card:hover > .bi-chevron-right) {
    color: #fff;
    background: #0f766e;
}

/* Dark theme final surface fixes */
body.sg-theme-koyu :is(.sg-address-card, .sg-location-card, .sg-cart-address, .sg-address-box, .sg-payment-option, .sg-wallet-row, .sg-stat-list a, .sg-distribution-list > div, .sg-coupon-form, .sg-map-picker, .sg-account-menu a) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .2);
}

body.sg-theme-koyu :is(.sg-address-card p, .sg-address-card small, .sg-location-card p, .sg-location-card small, .sg-cart-address span, .sg-address-box p, .sg-payment-option span, .sg-wallet-row span, .sg-stat-list small, .sg-distribution-list small, .sg-account-menu small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu :is(.sg-address-card strong, .sg-location-card strong, .sg-cart-address strong, .sg-address-box strong, .sg-payment-option strong, .sg-wallet-row strong, .sg-stat-list strong) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-cart-address i {
    color: #99f6e4 !important;
    border-color: rgba(251, 146, 60, .36) !important;
    background: rgba(124, 45, 18, .28) !important;
}

/* Dark theme interaction and account page hardening */
body.sg-theme-koyu :is(
    .sg-panel,
    .sg-account-hero-card,
    .sg-account-menu,
    .sg-account-menu a,
    .sg-account-menu button,
    .sg-account-mobile-nav,
    .sg-clickable-stats a,
    .sg-account-stats article,
    .sg-account-item-card,
    .sg-mini-order-list a,
    .sg-order-list a,
    .sg-order-card,
    .sg-location-card,
    .sg-location-coordinates span,
    .sg-settings-card,
    .sg-setting-switch,
    .sg-wallet-stats article,
    .sg-wallet-deposit,
    .sg-wallet-row,
    .sg-menu-section,
    .sg-menu-section summary,
    .sg-menu-item,
    .sg-form-toolbar
) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
}

body.sg-theme-koyu :is(
    .sg-clickable-stats a:hover,
    .sg-account-item-card:hover,
    .sg-mini-order-list a:hover,
    .sg-order-list a:hover,
    .sg-order-card:hover,
    .sg-account-menu a:hover,
    .sg-account-menu button:hover,
    .sg-account-menu a.is-active,
    .sg-account-mobile-nav a:hover,
    .sg-account-mobile-nav button:hover,
    .sg-account-mobile-nav a.is-active,
    .sg-stat-list a:hover,
    .sg-address-card:hover,
    .sg-location-card:hover,
    .sg-setting-switch:hover,
    .sg-payment-option:hover,
    .sg-icon-button:hover,
    .sg-fav-button:hover,
    .btn-outline-secondary:hover,
    .btn-light:hover
) {
    color: #fff !important;
    border-color: rgba(249, 115, 22, .58) !important;
    background: #1f2937 !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .24);
}

body.sg-theme-koyu :is(
    .sg-clickable-stats a:hover *,
    .sg-account-item-card:hover *,
    .sg-mini-order-list a:hover *,
    .sg-order-list a:hover *,
    .sg-order-card:hover *,
    .sg-account-menu a:hover *,
    .sg-account-menu button:hover *,
    .sg-account-menu a.is-active *,
    .sg-account-mobile-nav a:hover *,
    .sg-account-mobile-nav button:hover *,
    .sg-account-mobile-nav a.is-active *,
    .sg-stat-list a:hover *,
    .sg-address-card:hover *,
    .sg-location-card:hover *,
    .sg-setting-switch:hover *,
    .sg-payment-option:hover *,
    .sg-icon-button:hover *,
    .sg-fav-button:hover *,
    .btn-outline-secondary:hover *,
    .btn-light:hover *
) {
    color: #fff !important;
}

body.sg-theme-koyu :is(
    .sg-clickable-stats a > span,
    .sg-clickable-stats a > small,
    .sg-account-stats span,
    .sg-account-stats small,
    .sg-account-item-card small,
    .sg-mini-order-list small,
    .sg-order-card p,
    .sg-order-card small,
    .sg-order-card span:not(.sg-cart-badge),
    .sg-order-list a span,
    .sg-location-card p,
    .sg-location-card small,
    .sg-location-coordinates span,
    .sg-settings-heading span,
    .sg-setting-switch small,
    .sg-wallet-row span,
    .sg-wallet-row small,
    .sg-account-menu small
) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu :is(
    .sg-clickable-stats a > strong,
    .sg-account-stats strong,
    .sg-account-item-card strong,
    .sg-mini-order-list strong,
    .sg-order-card strong,
    .sg-order-list a strong,
    .sg-location-card strong,
    .sg-settings-heading strong,
    .sg-setting-switch strong,
    .sg-wallet-row strong,
    .sg-account-menu strong
) {
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-account-item-card > span, .sg-account-menu a > span, .sg-settings-heading > i, .sg-location-pin, .sg-location-empty > i) {
    color: #99f6e4 !important;
    background: rgba(124, 45, 18, .32) !important;
}

body.sg-theme-koyu :is(.sg-icon-button, .sg-fav-button, .btn-outline-secondary, .btn-light) {
    color: #e5edf8 !important;
    border-color: #334155 !important;
    background: #111827 !important;
}

body.sg-theme-koyu :is(.btn-primary, .sg-icon-button-primary) {
    color: #fff !important;
    border-color: #14b8a6 !important;
    background: #0f766e !important;
}

/* Dark theme full-page consistency */
body.sg-theme-koyu :is(
    .sg-auth-page,
    .sg-auth-section,
    .sg-section-white,
    .sg-main-shell,
    .sg-hero-shell,
    .sg-hero-store,
    .sg-home-category-panel,
    .sg-home-location,
    .sg-home-search,
    .sg-home-stores,
    .sg-category-tabs,
    .sg-category-circle,
    .sg-category-empty,
    .sg-category-icon-card > span,
    .sg-store,
    .sg-store-shell,
    .sg-favorite-card,
    .sg-mobile-status-grid a,
    .sg-nearby-shell,
    .sg-nearby-search-panel,
    .sg-nearby-search-panel .sg-search,
    .sg-search,
    .sg-cart-item,
    .sg-cart-qty,
    .sg-cart-remove,
    .sg-cart-minimum,
    .sg-result-card,
    .sg-result-summary,
    .sg-payment-step,
    .sg-payment-step-title i,
    .sg-payment-empty,
    .sg-customizer-group,
    .sg-customizer-option,
    .sg-modal-dialog,
    .sg-social-links a,
    .sg-captcha-row strong,
    .sg-visitor-prompt,
    .sg-courier-route > div
) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
}

body.sg-theme-koyu :is(
    .sg-home-search input,
    .sg-nearby-search-panel input,
    .sg-search input,
    .sg-auth-card input,
    .sg-auth-card textarea,
    .sg-auth-card select,
    .sg-panel input,
    .sg-panel textarea,
    .sg-panel select,
    .sg-modal-dialog input,
    .sg-modal-dialog textarea,
    .sg-modal-dialog select
) {
    color: #f8fafc !important;
    border-color: #334155 !important;
    background: #111827 !important;
}

body.sg-theme-koyu :is(
    .sg-home-search input::placeholder,
    .sg-nearby-search-panel input::placeholder,
    .sg-search input::placeholder,
    .sg-auth-card input::placeholder,
    .sg-panel input::placeholder,
    .sg-panel textarea::placeholder,
    .sg-modal-dialog input::placeholder,
    .sg-modal-dialog textarea::placeholder
) {
    color: #94a3b8 !important;
}

body.sg-theme-koyu :is(
    .sg-category-tabs button:hover,
    .sg-category-tabs button.is-active,
    .sg-category-circle:hover,
    .sg-mobile-status-grid a:hover,
    .sg-social-links a:hover,
    .sg-customizer-option:hover,
    .sg-customizer-option:has(input:checked),
    .sg-cart-remove:hover,
    .sg-cart-qty button:hover,
    .sg-back-link:hover
) {
    color: #fff !important;
    border-color: rgba(249, 115, 22, .58) !important;
    background: #1f2937 !important;
}

body.sg-theme-koyu :is(
    .sg-category-tabs button:hover *,
    .sg-category-tabs button.is-active *,
    .sg-category-circle:hover *,
    .sg-mobile-status-grid a:hover *,
    .sg-social-links a:hover *,
    .sg-customizer-option:hover *,
    .sg-customizer-option:has(input:checked) *,
    .sg-cart-remove:hover *,
    .sg-cart-qty button:hover *,
    .sg-back-link:hover *
) {
    color: #fff !important;
}

body.sg-theme-koyu :is(
    .sg-badge-warning,
    .sg-meta span,
    .sg-cart-item-meta span,
    .sg-menu-badge,
    .sg-product-flag span,
    .sg-order-status,
    .sg-minimum-warning
) {
    color: #99f6e4 !important;
    border-color: rgba(251, 146, 60, .36) !important;
    background: rgba(124, 45, 18, .28) !important;
}

/* Store detail dark theme completion */
body.sg-theme-koyu :is(.sg-store-detail, .sg-store-hero) {
    color: #f8fafc !important;
    background: #0f1623 !important;
}

body.sg-theme-koyu .sg-store-hero {
    background:
        radial-gradient(circle at 16% 0%, rgba(249, 115, 22, .14), transparent 34%),
        linear-gradient(180deg, #0f1623 0%, #111827 100%) !important;
}

body.sg-theme-koyu :is(.sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
}

body.sg-theme-koyu :is(.sg-store-cover img, .sg-menu-item img) {
    background: #111827 !important;
}

body.sg-theme-koyu :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu :is(.sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-contact-card strong, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-menu-price del {
    color: #94a3b8 !important;
}

body.sg-theme-koyu .sg-hours-list div {
    background: #111827 !important;
}

body.sg-theme-koyu .sg-contact-card dl > div {
    border-color: #263244 !important;
    background: #111827 !important;
}

body.sg-theme-koyu .sg-panel-title {
    border-color: #334155 !important;
    background: linear-gradient(180deg, #1e293b 0%, #151c2a 100%) !important;
    box-shadow: inset 3px 0 0 #14b8a6 !important;
}

body.sg-theme-koyu .sg-panel-title span {
    color: #99f6e4 !important;
    background: rgba(251, 146, 60, .18) !important;
}

body.sg-theme-koyu .sg-hours-list div.is-today,
body.sg-theme-koyu .sg-info-row[open] summary::after {
    color: #99f6e4 !important;
    background: rgba(249, 115, 22, .16) !important;
}

body.sg-theme-koyu :is(.sg-badge-success, .sg-badge-info, .sg-badge-money, .sg-menu-flags span, .sg-menu-price span) {
    color: #dbeafe !important;
    border-color: rgba(96, 165, 250, .32) !important;
    background: rgba(30, 64, 175, .22) !important;
}

body.sg-theme-koyu .sg-badge-success {
    color: #bbf7d0 !important;
    border-color: rgba(34, 197, 94, .34) !important;
    background: rgba(22, 101, 52, .28) !important;
}

body.sg-theme-koyu .sg-badge-money {
    color: #fecdd3 !important;
    border-color: rgba(244, 63, 94, .32) !important;
    background: rgba(136, 19, 55, .25) !important;
}

@media (prefers-color-scheme: dark) {
    body.sg-theme-sistem :is(.sg-store-detail, .sg-store-hero) {
        color: #f8fafc !important;
        background: #0f1623 !important;
    }

    body.sg-theme-sistem .sg-store-hero {
        background:
            radial-gradient(circle at 16% 0%, rgba(249, 115, 22, .14), transparent 34%),
            linear-gradient(180deg, #0f1623 0%, #111827 100%) !important;
    }

    body.sg-theme-sistem :is(.sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item) {
        color: #f8fafc !important;
        border-color: #263244 !important;
        background: #151c2a !important;
    }

    body.sg-theme-sistem :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small) {
        color: #a7b0c0 !important;
    }

    body.sg-theme-sistem :is(.sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
        color: #f8fafc !important;
    }

    body.sg-theme-sistem .sg-hours-list div {
        background: #111827 !important;
    }

    body.sg-theme-sistem .sg-contact-card dl > div {
        border-color: #263244 !important;
        background: #111827 !important;
    }

    body.sg-theme-sistem .sg-panel-title {
        border-color: #334155 !important;
        background: linear-gradient(180deg, #1e293b 0%, #151c2a 100%) !important;
        box-shadow: inset 3px 0 0 #14b8a6 !important;
    }

    body.sg-theme-sistem .sg-panel-title span {
        color: #99f6e4 !important;
        background: rgba(251, 146, 60, .18) !important;
    }

    body.sg-theme-sistem .sg-hours-list div.is-today,
    body.sg-theme-sistem .sg-info-row[open] summary::after {
        color: #99f6e4 !important;
        background: rgba(249, 115, 22, .16) !important;
    }
}

/* Absolute final header reset: homepage and nearby must not drift */
html,
body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.sg-header,
body:has(.sg-home) .sg-header,
body:has(.sg-nearby-page) .sg-header {
    position: sticky !important;
    top: 0 !important;
    margin-top: 0 !important;
    transform: none !important;
}

.sg-header .navbar,
.sg-header .navbar .container,
body:has(.sg-home) .navbar,
body:has(.sg-home) .navbar .container,
body:has(.sg-nearby-page) .navbar,
body:has(.sg-nearby-page) .navbar .container {
    margin-top: 0 !important;
}

body:has(.sg-home) .sg-page,
body:has(.sg-nearby-page) .sg-page {
    margin-top: 0 !important;
}

/* Header action sizing - one visual system on every page */
.sg-header {
    background: #0b0f17 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
}

.sg-header .navbar {
    min-height: 62px !important;
}

.sg-header .navbar .container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
}

.sg-header .d-flex.align-items-center,
.sg-header .sg-nav-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    flex-wrap: nowrap !important;
}

.sg-header .btn-sm,
.sg-header .sg-icon-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 10px !important;
    border-radius: 8px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.sg-header .btn-sm i,
.sg-header .sg-icon-button i {
    flex: 0 0 auto !important;
    font-size: .96rem !important;
    line-height: 1 !important;
}

.sg-header .btn-sm span:not(.sg-cart-badge) {
    line-height: 1 !important;
}

@media (max-width: 767.98px) {
    .sg-header .navbar,
    body:has(.sg-home) .navbar,
    body:has(.sg-nearby-page) .navbar {
        min-height: 56px !important;
    }

    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-header .navbar-brand {
        flex: 1 1 auto !important;
        min-width: 0 !important;
    }

    .sg-header .navbar-brand strong {
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .sg-header .d-flex.align-items-center,
    .sg-header .sg-nav-actions,
    body:has(.sg-home) .sg-header .d-flex.align-items-center,
    body:has(.sg-nearby-page) .sg-header .d-flex.align-items-center {
        flex: 0 0 auto !important;
        width: auto !important;
        gap: 3px !important;
    }

    .sg-header .btn-sm,
    .sg-header .sg-icon-button,
    body:has(.sg-home) .sg-header .btn-sm,
    body:has(.sg-nearby-page) .sg-header .btn-sm {
        width: 32px !important;
        min-width: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 !important;
        overflow: hidden !important;
        font-size: 0 !important;
    }

    .sg-header .btn-sm span:not(.sg-cart-badge),
    body:has(.sg-home) .sg-header .btn-sm span:not(.sg-cart-badge),
    body:has(.sg-nearby-page) .sg-header .btn-sm span:not(.sg-cart-badge) {
        display: none !important;
    }

    .sg-header .btn-sm i,
    .sg-header .sg-icon-button i,
    body:has(.sg-home) .sg-header .btn-sm i,
    body:has(.sg-nearby-page) .sg-header .btn-sm i {
        font-size: .96rem !important;
    }

    .sg-header .sg-nav-form,
    body:has(.sg-home) .sg-nav-form,
    body:has(.sg-nearby-page) .sg-nav-form {
        flex: 0 0 32px !important;
        width: 32px !important;
        margin: 0 !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest .btn-primary,
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest .btn-primary {
        width: 28px !important;
        min-width: 28px !important;
        height: 32px !important;
        min-height: 32px !important;
        border-radius: 8px !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest .btn-primary i,
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest .btn-primary i {
        font-size: .9rem !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest,
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest {
        gap: 5px !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest .sg-nav-cart,
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest .sg-nav-cart {
        display: none !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest .sg-nav-nearby,
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest .sg-nav-nearby {
        display: none !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest .sg-nav-login,
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest .sg-nav-login {
        background: #f97316 !important;
        border-color: #f97316 !important;
        color: #fff !important;
        font-size: .78rem !important;
        font-weight: 800 !important;
        gap: .35rem !important;
        order: 2 !important;
        width: auto !important;
        min-width: 86px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 .65rem !important;
        border-radius: 9px !important;
    }

    body:has(.sg-home) .sg-nav-actions.is-guest .sg-nav-login span:not(.sg-cart-badge),
    body:has(.sg-nearby-page) .sg-nav-actions.is-guest .sg-nav-login span:not(.sg-cart-badge) {
        display: inline !important;
    }
}

/* Absolute final mobile category tabs: keep all three tabs visible. */
@media (max-width: 767.98px) {
    .sg-home-category-panel {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-category-panel .sg-category-tabs {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 3px !important;
        margin: 0 0 8px !important;
        padding: 3px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-category-panel .sg-category-tabs button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 44px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        padding: 4px 1px !important;
        overflow: hidden !important;
        border-radius: 6px !important;
        font-size: .48rem !important;
        line-height: 1.05 !important;
        box-sizing: border-box !important;
    }

    .sg-home-category-panel .sg-category-tabs button i {
        flex: 0 0 auto !important;
        font-size: .72rem !important;
        line-height: 1 !important;
    }

    .sg-home-category-panel .sg-category-tabs button span {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: -webkit-box !important;
        overflow: hidden !important;
        text-align: center !important;
        text-overflow: ellipsis !important;
        white-space: normal !important;
        word-break: normal !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }
}


/* True final mobile overflow guard - appended after every previous rule. */
@media (max-width: 767.98px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    .sg-header,
    .sg-header .navbar,
    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container,
    .sg-page,
    .sg-home,
    .sg-section,
    .sg-home-shell,
    .sg-main-shell,
    .sg-home-visitor-stack,
    .sg-home-block,
    .sg-home-category-panel,
    .sg-home-stores,
    .sg-nearby-shell {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }

    .sg-header .navbar .container,
    body:has(.sg-home) .navbar .container,
    body:has(.sg-nearby-page) .navbar .container {
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-home-shell,
    .sg-main-shell {
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sg-home-head,
    .sg-home-visitor-stack,
    .sg-home-category-panel,
    .sg-home-block,
    .sg-home-block-title {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .sg-promo-slider,
    .sg-category-circles {
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    .sg-promo-slide,
    .sg-category-circle,
    .sg-store,
    .sg-home-block-title > div {
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* True final desktop promo layout - campaigns stay inside the main shell. */
@media (min-width: 768px) {
    .sg-home-promo-panel,
    .sg-home-promo-panel .sg-home-block-title,
    .sg-home-promo-panel .sg-promo-slider {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-promo-panel .sg-promo-slider {
        display: grid !important;
        grid-auto-flow: row !important;
        grid-auto-columns: unset !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 0 !important;
        scroll-snap-type: none !important;
    }

    .sg-home-promo-panel .sg-promo-slide {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        scroll-snap-align: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .sg-home-promo-panel .sg-promo-slider {
        grid-template-columns: 1fr !important;
    }
}

/* True final promo carousel: four desktop cards with clean external controls. */
.sg-home-promo-panel .sg-home-block-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
}

.sg-promo-arrows {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.sg-promo-arrows button {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    background: #fff;
    box-shadow: 0 6px 14px rgba(15, 23, 42, .06);
    line-height: 1;
}

.sg-promo-arrows button:hover {
    color: #fff;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

@media (min-width: 992px) {
    .sg-home-promo-panel,
    .sg-home-promo-panel .sg-promo-slider {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    .sg-home-promo-panel .sg-promo-slider {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: calc((100% - 24px) / 4) !important;
        grid-template-columns: none !important;
        gap: 8px !important;
        margin: 0 !important;
        padding: 0 0 4px !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth;
    }

    .sg-home-promo-panel .sg-promo-slide {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 142px !important;
        padding: 12px !important;
        border-radius: 8px !important;
        scroll-snap-align: start !important;
    }

    .sg-home-promo-panel .sg-promo-slide strong {
        max-width: 100% !important;
        font-size: .88rem !important;
        line-height: 1.16 !important;
    }

    .sg-home-promo-panel .sg-promo-slide small {
        max-width: 100% !important;
        font-size: .68rem !important;
        line-height: 1.28 !important;
    }

    .sg-home-promo-panel .sg-promo-slide em {
        margin-top: 4px !important;
        padding: 5px 7px !important;
        border-radius: 6px !important;
        font-size: .64rem !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .sg-home-promo-panel .sg-promo-slider {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: calc((100% - 8px) / 2) !important;
        grid-template-columns: none !important;
        gap: 8px !important;
        margin: 0 !important;
        padding: 0 0 4px !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
    }
}

@media (max-width: 767.98px) {
    .sg-promo-arrows {
        display: none !important;
    }
}

body.sg-theme-koyu .sg-promo-arrows button {
    color: #f8fafc;
    border-color: #263244;
    background: #151c2a;
    box-shadow: none;
}

body.sg-theme-koyu .sg-promo-arrows button:hover {
    color: #fff;
    border-color: #14b8a6;
    background: #ea580c;
}

/* True final promo arrow compact placement. */
.sg-home-promo-panel .sg-home-block-title {
    position: relative !important;
    align-items: flex-start !important;
    padding-right: 78px !important;
}

.sg-promo-arrows {
    position: absolute !important;
    top: 7px !important;
    right: 8px !important;
    gap: 1px !important;
}

.sg-promo-arrows button {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

.sg-promo-arrows button i {
    font-size: 1rem !important;
    line-height: 1 !important;
}

@media (max-width: 767.98px) {
    .sg-home-promo-panel .sg-home-block-title {
        padding-right: 8px !important;
    }
}

/* True final account order history polish. */
.sg-account-order-list {
    display: grid !important;
    gap: 8px !important;
}

.sg-account-order-list a {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) auto 18px !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 62px !important;
    padding: 9px 10px !important;
    border: 1px solid var(--sg-border) !important;
    border-radius: 8px !important;
    color: var(--sg-text) !important;
    background: linear-gradient(180deg, #fff 0%, #fbfdff 100%) !important;
    text-decoration: none !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .045) !important;
    overflow: hidden !important;
}

.sg-account-order-list a::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: var(--sg-primary);
    opacity: .78;
}

.sg-account-order-list a:hover {
    transform: translateY(-1px);
    border-color: rgba(0, 168, 132, .28) !important;
    box-shadow: 0 12px 26px rgba(15, 23, 42, .075) !important;
}

.sg-account-order-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    color: var(--sg-primary) !important;
    background: #f0fdfa !important;
    font-size: 1rem !important;
}

.sg-account-order-body {
    min-width: 0 !important;
    display: grid !important;
    gap: 5px !important;
}

.sg-account-order-body strong {
    max-width: 100% !important;
    overflow: hidden !important;
    color: var(--sg-text) !important;
    font-size: .82rem !important;
    line-height: 1.15 !important;
    font-weight: 760 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sg-account-order-body small {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: var(--sg-muted) !important;
    font-size: .7rem !important;
    line-height: 1 !important;
}

.sg-account-order-body small > span {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sg-account-order-status {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 20px !important;
    padding: 3px 6px !important;
    border: 1px solid #99f6e4 !important;
    border-radius: 6px !important;
    color: #9a3412 !important;
    background: #f0fdfa !important;
    font-size: .64rem !important;
    font-style: normal !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.sg-account-order-status.is-complete {
    color: #166534 !important;
    border-color: #bbf7d0 !important;
    background: #f0fdf4 !important;
}

.sg-account-order-status.is-cancelled {
    color: #991b1b !important;
    border-color: #fecaca !important;
    background: #fef2f2 !important;
}

.sg-account-order-total {
    justify-self: end !important;
    padding: 6px 8px !important;
    border-radius: 7px !important;
    color: #0f5132 !important;
    background: #ecfdf3 !important;
    font-size: .75rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.sg-account-order-list a > .bi-chevron-right {
    justify-self: end !important;
    color: #98a2b3 !important;
    font-size: .82rem !important;
}

@media (max-width: 575.98px) {
    .sg-account-order-list a {
        grid-template-columns: 32px minmax(0, 1fr) auto !important;
        gap: 8px !important;
        min-height: 58px !important;
        padding: 8px 9px !important;
    }

    .sg-account-order-icon {
        width: 32px !important;
        height: 32px !important;
        font-size: .9rem !important;
    }

    .sg-account-order-list a > .bi-chevron-right {
        display: none !important;
    }

    .sg-account-order-body small {
        gap: 4px !important;
    }

    .sg-account-order-status {
        max-width: 96px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}

body.sg-theme-koyu .sg-account-order-list a {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: linear-gradient(180deg, #151c2a 0%, #111827 100%) !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-account-order-icon {
    color: #99f6e4 !important;
    background: rgba(124, 45, 18, .32) !important;
}

body.sg-theme-koyu .sg-account-order-body strong {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-account-order-body small,
body.sg-theme-koyu .sg-account-order-body small > span {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-account-order-total {
    color: #bbf7d0 !important;
    background: rgba(22, 101, 52, .28) !important;
}

/* True final order detail item layout: use the full content width. */
.sg-order-detail-items {
    width: 100% !important;
    display: grid !important;
    gap: 0 !important;
    padding: 2px !important;
    border: 1px solid var(--sg-border) !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, #fff 0%, #fbfdff 100%) !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .04) !important;
    box-sizing: border-box !important;
}

.sg-order-detail-items .sg-order-line-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 9px 10px !important;
    border: 0 !important;
    border-bottom: 1px dashed #d9e2dc !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.sg-order-detail-items .sg-order-line-item:last-child {
    border-bottom: 0 !important;
}

.sg-order-line-body {
    min-width: 0 !important;
    display: grid !important;
    gap: 5px !important;
}

.sg-order-line-body h2 {
    margin: 0 !important;
    color: var(--sg-text) !important;
    font-size: .95rem !important;
    line-height: 1.18 !important;
    font-weight: 760 !important;
}

.sg-order-line-body p {
    margin: 0 !important;
    color: var(--sg-muted) !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
}

.sg-order-detail-items .sg-cart-options {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin-top: 2px !important;
}

.sg-order-detail-items .sg-cart-options span {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 22px !important;
    padding: 4px 7px !important;
    border: 1px solid #99f6e4 !important;
    border-radius: 6px !important;
    color: #9a3412 !important;
    background: #f0fdfa !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

.sg-order-line-total {
    justify-self: end !important;
    align-self: center !important;
    padding: 0 !important;
    border-radius: 0 !important;
    color: #0f5132 !important;
    background: transparent !important;
    font-size: .82rem !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

@media (max-width: 575.98px) {
    .sg-order-detail-items .sg-order-line-item {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 8px !important;
        padding: 8px !important;
    }

    .sg-order-line-body h2 {
        font-size: .86rem !important;
    }

    .sg-order-line-body p {
        font-size: .72rem !important;
    }

    .sg-order-detail-items .sg-cart-options span {
        max-width: 100% !important;
        font-size: .64rem !important;
    }

    .sg-order-line-total {
        padding: 0 !important;
        font-size: .74rem !important;
    }
}

body.sg-theme-koyu .sg-order-detail-items {
    border-color: #263244 !important;
    background: linear-gradient(180deg, #151c2a 0%, #111827 100%) !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-order-detail-items .sg-order-line-item {
    border-bottom-color: #263244 !important;
}

body.sg-theme-koyu .sg-order-line-body h2 {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-order-line-body p {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-order-detail-items .sg-cart-options span {
    color: #99f6e4 !important;
    border-color: rgba(251, 146, 60, .36) !important;
    background: rgba(124, 45, 18, .28) !important;
}

body.sg-theme-koyu .sg-order-line-total {
    color: #bbf7d0 !important;
    background: rgba(22, 101, 52, .28) !important;
}

.sg-rating-panel {
    display: grid !important;
    gap: 12px !important;
    margin-top: 12px !important;
    padding: 14px !important;
    border: 1px solid rgba(20, 184, 166, .24) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7fffd 100%) !important;
}

.sg-rating-form {
    display: grid !important;
    gap: 12px !important;
}

.sg-rating-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.sg-rating-form label,
.sg-rating-textarea,
.sg-rating-products label {
    display: grid !important;
    gap: 5px !important;
    margin: 0 !important;
}

.sg-rating-form label > span,
.sg-rating-products > strong {
    color: #0f172a !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
}

.sg-rating-products {
    display: grid !important;
    gap: 8px !important;
    padding: 10px !important;
    border: 1px solid rgba(15, 118, 110, .16) !important;
    border-radius: 8px !important;
    background: #ffffff !important;
}

.sg-rating-products p {
    margin: -3px 0 2px !important;
    color: #64748b !important;
    font-size: .76rem !important;
}

.sg-rating-form .form-control,
.sg-rating-form .form-select {
    border-color: rgba(15, 118, 110, .18) !important;
    color: #0f172a !important;
    background-color: #ffffff !important;
    font-size: .84rem !important;
    font-weight: 500 !important;
}

.sg-rating-form .btn {
    width: max-content !important;
    min-height: 38px !important;
    gap: 7px !important;
}

body.sg-theme-koyu .sg-rating-panel,
body.sg-theme-koyu .sg-rating-products {
    border-color: #263244 !important;
    background: linear-gradient(180deg, #151c2a 0%, #111827 100%) !important;
}

body.sg-theme-koyu .sg-rating-form label > span,
body.sg-theme-koyu .sg-rating-products > strong {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-rating-products p {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-rating-form .form-control,
body.sg-theme-koyu .sg-rating-form .form-select {
    border-color: #334155 !important;
    color: #f8fafc !important;
    background-color: #0f172a !important;
}

@media (max-width: 575.98px) {
    .sg-rating-grid {
        grid-template-columns: 1fr !important;
    }

    .sg-rating-panel {
        padding: 11px !important;
        border-radius: 9px !important;
    }

    .sg-rating-form .btn {
        width: 100% !important;
    }
}

/* True final mobile welcome inline badge. */
.sg-mobile-welcome h1 {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: nowrap !important;
    max-width: 100% !important;
    margin: 2px 0 0 !important;
    color: #fff !important;
    font-size: .94rem !important;
    line-height: 1 !important;
}

.sg-mobile-welcome h1 > span {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    color: rgba(255, 255, 255, .88) !important;
    font-size: .78rem !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    text-transform: none !important;
}

.sg-mobile-welcome h1 > strong {
    min-width: 0 !important;
    max-width: 62vw !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 5px 8px !important;
    border-radius: 7px !important;
    color: var(--sg-primary) !important;
    background: #fff !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .12) !important;
}

@media (min-width: 768px) {
    .sg-mobile-welcome h1 > strong {
        max-width: 360px !important;
    }
}

/* True final smart search suggestions. */
.sg-smart-search {
    position: relative !important;
    overflow: visible !important;
    z-index: 20 !important;
}

.sg-search-suggestions {
    position: absolute !important;
    top: calc(100% + 6px) !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 80 !important;
    display: grid !important;
    gap: 5px !important;
    max-height: min(420px, 64vh) !important;
    padding: 6px !important;
    overflow-y: auto !important;
    border: 1px solid var(--sg-border) !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .16) !important;
}

.sg-search-suggestions[hidden] {
    display: none !important;
}

.sg-search-suggestion {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 54px !important;
    padding: 7px !important;
    border: 1px solid transparent !important;
    border-radius: 8px !important;
    color: var(--sg-text) !important;
    background: #fff !important;
    text-decoration: none !important;
}

.sg-search-suggestion:hover {
    border-color: rgba(0, 168, 132, .22) !important;
    background: #f0fdfa !important;
}

.sg-search-suggestion img,
.sg-search-suggestion > span {
    width: 42px !important;
    height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    object-fit: cover !important;
    color: var(--sg-primary) !important;
    background: #f0fdfa !important;
}

.sg-search-suggestion div {
    min-width: 0 !important;
    display: grid !important;
    gap: 2px !important;
}

.sg-search-suggestion small {
    color: var(--sg-primary) !important;
    font-size: .62rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.sg-search-suggestion strong {
    overflow: hidden !important;
    color: var(--sg-text) !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    line-height: 1.12 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sg-search-suggestion em {
    overflow: hidden !important;
    color: var(--sg-muted) !important;
    font-size: .7rem !important;
    font-style: normal !important;
    line-height: 1.1 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sg-search-suggestion b {
    justify-self: end !important;
    padding: 5px 7px !important;
    border-radius: 6px !important;
    color: #166534 !important;
    background: #f0fdf4 !important;
    font-size: .66rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.sg-search-loading,
.sg-search-empty {
    display: grid !important;
    gap: 3px !important;
    padding: 12px !important;
    color: var(--sg-muted) !important;
    font-size: .78rem !important;
}

.sg-search-loading {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    align-items: center !important;
}

.sg-search-loading i {
    color: var(--sg-primary) !important;
}

.sg-search-empty strong {
    color: var(--sg-text) !important;
    font-size: .82rem !important;
}

@media (max-width: 575.98px) {
    .sg-search-suggestions {
        right: 0 !important;
        left: 0 !important;
        max-height: 58vh !important;
    }

    .sg-search-suggestion {
        grid-template-columns: 38px minmax(0, 1fr) !important;
        min-height: 50px !important;
    }

    .sg-search-suggestion img,
    .sg-search-suggestion > span {
        width: 38px !important;
        height: 38px !important;
    }

    .sg-search-suggestion b {
        display: none !important;
    }
}

body.sg-theme-koyu .sg-search-suggestions,
body.sg-theme-koyu .sg-search-suggestion {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
}

body.sg-theme-koyu .sg-search-suggestion:hover {
    border-color: rgba(249, 115, 22, .48) !important;
    background: #1f2937 !important;
}

body.sg-theme-koyu .sg-search-suggestion strong,
body.sg-theme-koyu .sg-search-empty strong {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-search-suggestion em,
body.sg-theme-koyu .sg-search-loading,
body.sg-theme-koyu .sg-search-empty {
    color: #a7b0c0 !important;
}

/* True final shared main layout shell for every customer page. */
.sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) {
    width: min(100% - 24px, 1120px) !important;
    max-width: 1120px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 0px !important;
    border: 1px solid var(--sg-border) !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06) !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

.sg-page.sg-auth-page > .sg-section > .container:not(:has(> .sg-main-shell)) {
    width: min(100% - 24px, 760px) !important;
    max-width: 760px !important;
}

.sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) > .sg-back-link,
.sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) > .sg-page-nav {
    margin-bottom: 12px !important;
}

.sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) > :last-child {
    margin-bottom: 0 !important;
}

.sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) .sg-panel {
    box-shadow: none !important;
}

@media (max-width: 767.98px) {
    .sg-page > .sg-section {
        padding-top: 10px !important;
        padding-bottom: 74px !important;
    }

    .sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) {
        width: min(100% - 24px, 1120px) !important;
        max-width: 1120px !important;
        padding: 0px !important;
        border-radius: 8px !important;
    }
}

body.sg-theme-koyu .sg-page > .sg-section > .container:not(:has(> .sg-main-shell)) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #111827 !important;
    box-shadow: none !important;
}

/* Admin/store/courier panel foundation ported into the Laravel-free app. */
.sg-panel-page > .sg-section > .container {
    max-width: 1180px !important;
}

.sg-panel-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}

.sg-panel-user-chip {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 8px;
    color: #fff;
    background: rgba(255, 255, 255, .08);
    font-size: .75rem;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.sg-panel-user-chip i {
    font-size: .9rem;
}

.sg-panel-nav a {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    background: #fff;
    font-size: .8rem;
    font-weight: 760;
    line-height: 1;
    text-decoration: none;
}

.sg-panel-nav a.is-active,
.sg-panel-nav a:hover {
    color: #fff;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

.sg-panel-nav {
    position: sticky;
    top: 0;
    z-index: 20;
    align-items: center;
    padding: 6px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
}

.sg-panel-nav-group {
    position: relative;
}

.sg-panel-nav-group summary {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 7px;
    color: #334155;
    background: transparent;
    font-size: .78rem;
    font-weight: 820;
    line-height: 1;
    list-style: none;
    cursor: pointer;
    white-space: nowrap;
}

.sg-panel-nav-group summary::-webkit-details-marker {
    display: none;
}

.sg-panel-nav-toggle {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 7px;
    color: #334155;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: .78rem;
    font-weight: 820;
    gap: 6px;
    line-height: 1;
    min-height: 36px;
    padding: 8px 10px;
    white-space: nowrap;
}

.sg-panel-nav-toggle::after {
    display: none;
}

.sg-panel-nav-group.is-active > summary,
.sg-panel-nav-group[open] > summary,
.sg-panel-nav-group summary:hover,
.sg-panel-nav-group.is-active > .sg-panel-nav-toggle,
.sg-panel-nav-group.show > .sg-panel-nav-toggle,
.sg-panel-nav-group .sg-panel-nav-toggle:hover {
    color: #fff;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

.sg-panel-nav-caret {
    margin-left: 2px;
    font-size: .68rem;
}

.sg-panel-nav-group[open] .sg-panel-nav-caret,
.sg-panel-nav-group.show .sg-panel-nav-caret {
    transform: rotate(180deg);
}

.sg-panel-dropdown {
    min-width: 238px;
    display: none;
    gap: 4px;
    padding: 6px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .14);
}

.sg-panel-nav-group[open] > .sg-panel-dropdown,
.sg-panel-nav-group.show > .sg-panel-dropdown,
.sg-panel-dropdown.show {
    display: grid;
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
}

.sg-panel-dropdown a {
    width: 100%;
    justify-content: flex-start;
    border-color: transparent;
    background: transparent;
    box-shadow: none;
}

.sg-panel-dropdown a.is-active,
.sg-panel-dropdown a:hover {
    color: #fff;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

.sg-panel-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 12px;
}

.sg-panel-stat-grid article,
.sg-panel-card {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .045);
}

.sg-panel-stat-grid span,
.sg-panel-card small {
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 750;
}

.sg-panel-stat-grid strong {
    display: block;
    margin-top: 5px;
    color: var(--sg-text);
    font-size: 1.15rem;
    line-height: 1;
}

.sg-panel-stat-grid small {
    display: block;
    margin-top: 6px;
    color: var(--sg-muted);
    font-size: .7rem;
}

.sg-panel-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.sg-panel-list {
    display: grid;
    gap: 7px;
}

.sg-panel-list a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: inherit;
    background: #fbfdff;
    text-decoration: none;
}

.sg-panel-list strong,
.sg-panel-card strong {
    display: block;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .86rem;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-panel-list small,
.sg-panel-card p {
    display: block;
    margin: 4px 0 0;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-panel-list b {
    padding: 5px 7px;
    border-radius: 6px;
    color: #166534;
    background: #f0fdf4;
    font-size: .72rem;
    line-height: 1;
    white-space: nowrap;
}

.sg-panel-table {
    width: 100%;
    overflow-x: auto;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-panel-table table {
    width: 100%;
    min-width: 820px;
    border-collapse: collapse;
}

.sg-panel-table th,
.sg-panel-table td {
    padding: 10px;
    border-bottom: 1px solid var(--sg-border);
    text-align: left;
    vertical-align: middle;
    font-size: .78rem;
}

.sg-panel-table th {
    color: var(--sg-muted);
    background: #f8fafc;
    font-size: .68rem;
    font-weight: 850;
    text-transform: uppercase;
}

.sg-panel-table td small {
    display: block;
    margin-top: 3px;
    color: var(--sg-muted);
    font-size: .66rem;
}

.sg-panel-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.sg-panel-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

.sg-panel-card-meta span,
.sg-panel-badge {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 4px 7px;
    border: 1px solid #99f6e4;
    border-radius: 6px;
    color: #9a3412;
    background: #f0fdfa;
    font-size: .66rem;
    font-weight: 800;
    line-height: 1;
}

.sg-panel-badge.is-ok {
    color: #166534;
    border-color: #bbf7d0;
    background: #f0fdf4;
}

.sg-panel-badge.is-warn {
    color: #991b1b;
    border-color: #fecaca;
    background: #fef2f2;
}

.sg-panel-card footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 12px;
}

.sg-panel-card footer a {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 850;
    text-decoration: none;
}

.sg-panel-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.sg-panel-title p {
    max-width: 760px;
    margin: 6px 0 0;
    color: var(--sg-muted);
    font-size: .86rem;
    line-height: 1.45;
}

.sg-admin-module-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.sg-admin-module-grid.is-compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sg-admin-module-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 10px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: inherit;
    background: #fff;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .045);
}

.sg-admin-module-card:hover {
    border-color: rgba(249, 115, 22, .38);
    transform: translateY(-1px);
}

.sg-admin-module-icon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: #fff;
    background: var(--sg-primary);
    font-size: 1rem;
}

.sg-admin-module-content {
    min-width: 0;
}

.sg-admin-module-card strong {
    display: block;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .82rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-admin-module-card small {
    display: -webkit-box;
    margin-top: 3px;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.sg-admin-module-counts {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 4px;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1;
}

.sg-admin-module-counts b {
    color: var(--sg-text);
    font-size: .98rem;
}

.sg-admin-module-counts em,
.sg-admin-module-counts i {
    font-style: normal;
    font-weight: 750;
}

.sg-admin-module-counts i {
    padding: 4px 6px;
    border-radius: 6px;
    color: #166534;
    background: #f0fdf4;
}

.sg-admin-module-detail-head {
    position: relative;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding-right: 58px;
}

.sg-admin-module-detail-head .sg-admin-module-counts {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    grid-column: auto;
    min-width: 46px;
    justify-content: center;
    margin: 0;
    padding: 5px 7px;
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 6px 16px rgba(15, 23, 42, .06);
}

.sg-admin-module-detail-head .sg-admin-module-counts b {
    font-size: .82rem;
}

.sg-admin-module-detail-head .sg-admin-module-counts em {
    font-size: .62rem;
}

body.sg-theme-koyu .sg-admin-module-detail-head .sg-admin-module-counts,
.sg-business-theme-koyu .sg-admin-module-detail-head .sg-admin-module-counts {
    border-color: rgba(148, 163, 184, .24);
    background: rgba(15, 23, 42, .92);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .22);
}

.sg-admin-module-detail-head .sg-admin-module-icon {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    font-size: 1rem;
}

.sg-admin-module-detail-head span:not(.sg-admin-module-icon) {
    color: var(--sg-muted);
    font-size: .66rem;
    font-weight: 820;
}

.sg-admin-module-detail-head h1 {
    display: inline;
    margin: 0 8px 0 0;
    color: var(--sg-text);
    font-size: .98rem;
    line-height: 1.15;
}

.sg-admin-module-detail-head p {
    display: inline;
    margin: 0;
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.35;
}

.sg-admin-detail-list {
    display: grid;
    gap: 6px;
}

.sg-admin-detail-list article {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) auto auto auto;
    align-items: center;
    gap: 7px;
    min-height: 54px;
    padding: 8px 9px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fbfdff;
}

.sg-admin-detail-list article.is-active {
    border-color: #bbf7d0;
    background: #f7fef9;
}

.sg-admin-detail-list article.is-passive {
    border-color: #fecaca;
    background: #fff8f8;
}

.sg-admin-detail-list article:has(.sg-admin-list-thumb) {
    grid-template-columns: 44px minmax(180px, 1fr) auto auto auto;
}

.sg-admin-list-thumb {
    width: 44px;
    height: 38px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #f8fafc;
}

.sg-admin-list-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sg-admin-list-thumb-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sg-primary);
    background: rgba(0, 168, 132, .1);
    border-color: rgba(0, 168, 132, .18);
}

.sg-admin-detail-list.is-settings-list article {
    grid-template-columns: minmax(0, 1fr) auto;
}

.sg-admin-record-main {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.sg-admin-record-main strong {
    color: var(--sg-text);
    font-size: .82rem;
    line-height: 1.15;
}

.sg-admin-record-main small {
    max-width: 100%;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-admin-record-list article {
    grid-template-columns: minmax(220px, 1fr) minmax(180px, auto) auto auto;
}

.sg-admin-record-meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    min-width: 0;
}

.sg-admin-record-meta span {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    min-height: 22px;
    padding: 3px 7px;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    background: #f8fafc;
    color: #334155;
    font-size: .66rem;
    font-weight: 760;
    line-height: 1;
    white-space: nowrap;
}

.sg-admin-record-meta .bi-star-fill {
    color: #f59e0b;
    font-size: .72rem;
}

.sg-admin-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 56px;
    min-height: 24px;
    padding: 3px 8px;
    border: 1px solid #dbe3ef;
    border-radius: 7px;
    background: #f1f5f9;
    color: #475569;
    font-size: .68rem;
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
}

.sg-admin-status-pill.is-active {
    border-color: #bbf7d0;
    background: #dcfce7;
    color: #166534;
}

.sg-admin-status-pill.is-passive {
    border-color: #fecaca;
    background: #fee2e2;
    color: #991b1b;
}

.sg-admin-detail-list time {
    padding: 5px 7px;
    border-radius: 6px;
    background: #f8fafc;
    color: #334155;
    font-size: .68rem;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
}

.sg-admin-inline-form {
    margin: 0;
}

.sg-admin-inline-form .btn {
    min-height: 26px;
    padding: 4px 7px;
    border-radius: 6px;
    font-size: .64rem;
    font-weight: 800;
    line-height: 1;
}

.sg-admin-edit-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
}

.sg-settings-group-grid {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.sg-settings-group-card {
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}

.sg-settings-group-card summary {
    list-style: none;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 2px 9px;
    align-items: center;
    padding: 10px;
    cursor: pointer;
    border-bottom: 1px solid var(--sg-border);
}

.sg-settings-group-card summary::-webkit-details-marker {
    display: none;
}

.sg-settings-group-card summary > span {
    grid-row: span 2;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: #fff;
    background: var(--sg-primary);
}

.sg-settings-group-card summary strong {
    color: var(--sg-text);
    font-size: .86rem;
    line-height: 1.15;
}

.sg-settings-group-card summary small {
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.25;
}

.sg-settings-group-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 10px;
}

.sg-settings-group-fields label:has(textarea),
.sg-settings-group-fields .sg-admin-check-field {
    grid-column: 1 / -1;
}

.sg-admin-edit-form label {
    display: grid;
    gap: 4px;
    align-self: start;
    min-width: 0;
    margin: 0;
    color: var(--sg-text);
    font-size: .7rem;
    font-weight: 600;
}

.sg-admin-form-group-title {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 6px 0 0;
    padding: 10px 12px;
    border: 1px solid rgba(20, 184, 166, 0.24);
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.10), rgba(249, 115, 22, 0.08));
    color: #0f3f3a;
}

.sg-admin-form-group-title strong {
    font-size: 0.86rem;
    font-weight: 700;
}

.sg-admin-edit-form label:has(textarea),
.sg-admin-form-actions {
    grid-column: 1 / -1;
}

.sg-admin-store-map-picker {
    grid-column: 1 / -1;
}

.sg-admin-store-map-picker.is-error {
    border-color: rgba(220, 38, 38, 0.45);
    background: #fff7f7;
}

.sg-admin-store-map-picker.is-error [data-map-status] {
    color: #b91c1c;
    font-weight: 700;
}

.sg-admin-field-help {
    display: block;
    margin-top: 1px;
    color: #64748b;
    font-size: .66rem;
    font-weight: 500;
    line-height: 1.25;
}

.sg-admin-field-group {
    grid-column: 1 / -1;
    border: 1px solid rgba(20, 184, 166, 0.22);
    border-radius: 8px;
    background: #f8fffd;
    overflow: hidden;
}

.sg-admin-field-group summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 38px;
    padding: 8px 10px;
    color: #0f3f3a;
    cursor: pointer;
    list-style: none;
}

.sg-admin-field-group summary::-webkit-details-marker {
    display: none;
}

.sg-admin-field-group summary span {
    font-size: .78rem;
    font-weight: 700;
}

.sg-admin-field-group summary small {
    color: #64748b;
    font-size: .66rem;
    font-weight: 500;
    text-align: right;
}

.sg-admin-field-group-body {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 8px;
    border-top: 1px solid rgba(20, 184, 166, 0.16);
}

.sg-admin-edit-form input,
.sg-admin-edit-form select,
.sg-admin-edit-form textarea {
    width: 100%;
    min-height: 34px;
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    padding: 7px 8px;
    color: var(--sg-text);
    background: #fff;
    font-size: .76rem;
    outline: none;
}

.sg-admin-edit-form textarea {
    resize: vertical;
    line-height: 1.35;
}

.sg-admin-check-field {
    grid-template-columns: 1fr auto;
    align-items: center;
    min-height: 34px;
    padding: 7px 8px;
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    background: #fff;
}

.sg-admin-check-field input {
    width: 18px;
    min-height: 18px;
    padding: 0;
}

.sg-admin-check-field .sg-admin-switch-input {
    position: absolute;
    width: 1px;
    min-height: 1px;
    opacity: 0;
    pointer-events: none;
}

.sg-admin-switch {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 74px;
    height: 28px;
    padding: 0 9px 0 28px;
    border: 1px solid #d1d9e6;
    border-radius: 7px;
    background: #eef2f7;
    color: #64748b;
    font-size: .69rem;
    font-weight: 700;
    line-height: 1;
    transition: background .16s ease, border-color .16s ease, color .16s ease;
}

.sg-admin-switch i {
    position: absolute;
    left: 5px;
    width: 18px;
    height: 18px;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(15, 23, 42, .18);
    transition: transform .16s ease;
}

.sg-admin-switch .is-on {
    display: none;
    font-style: normal;
}

.sg-admin-switch .is-off {
    display: inline;
    font-style: normal;
}

.sg-admin-switch-input:checked + .sg-admin-switch {
    padding: 0 28px 0 9px;
    border-color: rgba(34, 197, 94, .5);
    background: #dcfce7;
    color: #166534;
}

.sg-admin-switch-input:checked + .sg-admin-switch i {
    transform: translateX(45px);
}

.sg-admin-switch-input:checked + .sg-admin-switch .is-on {
    display: inline;
}

.sg-admin-switch-input:checked + .sg-admin-switch .is-off {
    display: none;
}

.sg-admin-form-actions {
    display: flex;
    justify-content: flex-end;
}

.sg-admin-edit-link {
    width: 30px;
    height: 30px;
    min-height: 30px;
    border-radius: 7px;
}

.sg-admin-row-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    min-width: 0;
}

.sg-admin-row-actions form {
    margin: 0;
}

.sg-admin-row-actions .btn {
    min-height: 26px;
    padding: 4px 7px;
    border-radius: 6px;
    font-size: .64rem;
    font-weight: 800;
    line-height: 1;
}

.sg-admin-row-actions .sg-icon-button,
.sg-admin-inline-form .sg-icon-button,
.sg-admin-action-card .sg-icon-button {
    width: 30px;
    height: 30px;
    min-height: 30px;
    border-radius: 7px;
    font-size: .86rem;
}

.sg-admin-row-actions .sg-active-toggle-button,
.sg-admin-inline-form .sg-active-toggle-button {
    width: 36px;
    height: 36px;
    min-height: 36px;
    border-radius: 8px;
    font-size: 1rem;
}

.sg-admin-row-actions .sg-active-toggle-button.is-on,
.sg-admin-inline-form .sg-active-toggle-button.is-on {
    border-color: #86efac;
    background: #dcfce7;
    color: #15803d;
}

.sg-admin-row-actions .sg-active-toggle-button.is-off,
.sg-admin-inline-form .sg-active-toggle-button.is-off {
    border-color: #cbd5e1;
    background: #f1f5f9;
    color: #64748b;
}

.sg-admin-row-actions .sg-active-toggle-button.is-off:hover,
.sg-admin-inline-form .sg-active-toggle-button.is-off:hover {
    border-color: #fca5a5;
    background: #fee2e2;
    color: #b91c1c;
}

.sg-admin-row-actions .sg-active-toggle-button i,
.sg-admin-inline-form .sg-active-toggle-button i {
    font-size: 1.1rem;
}

.sg-application-detail {
    border-color: #99f6e4;
}

.sg-application-detail-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-application-detail-grid > div,
.sg-application-message {
    background: #f8fafc;
    border: 1px solid #dbeafe;
    border-radius: 8px;
    padding: 9px 10px;
}

.sg-application-detail-grid span,
.sg-application-message span {
    color: #64748b;
    display: block;
    font-size: .72rem;
    font-weight: 800;
    margin-bottom: 3px;
}

.sg-application-detail-grid strong,
.sg-application-message p {
    color: #0f172a;
    font-size: .86rem;
    font-weight: 800;
    margin: 0;
}

.sg-application-message {
    margin-top: 10px;
}

.sg-application-whatsapp {
    margin-top: 10px;
}

.sg-admin-list-tools {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    padding: 10px;
}

.sg-admin-list-tools form {
    align-items: end;
    display: flex;
    flex: 1 1 auto;
    gap: 6px;
    margin: 0;
    min-width: 0;
}

form.sg-admin-list-tools {
    align-items: end;
    display: flex;
    gap: 6px;
    margin: 10px 0;
}

.sg-admin-list-tools label {
    display: grid;
    flex: 1 1 auto;
    gap: 4px;
    margin: 0;
    min-width: 140px;
}

form.sg-admin-list-tools label {
    flex: 1 1 auto;
}

.sg-business-dashboard-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 12px;
}

.sg-business-finance-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.sg-business-finance-grid article {
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    min-width: 0;
    padding: 10px;
}

.sg-business-finance-grid span {
    color: var(--sg-muted);
    display: block;
    font-size: .72rem;
    font-weight: 850;
}

.sg-business-finance-grid strong {
    color: var(--sg-text);
    display: block;
    font-size: .95rem;
    line-height: 1.2;
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-dashboard-grid article {
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    min-width: 0;
    padding: 12px;
}

.sg-business-dashboard-grid span,
.sg-business-dashboard-grid small {
    color: var(--sg-muted);
    display: block;
    font-size: .74rem;
    font-weight: 780;
}

.sg-business-dashboard-grid strong {
    color: var(--sg-text);
    display: block;
    font-size: 1.1rem;
    line-height: 1.2;
    margin: 3px 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-kanban {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 12px;
}

.sg-business-kanban-column {
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    min-width: 0;
    padding: 8px;
}

.sg-business-kanban-column header {
    align-items: center;
    display: grid;
    gap: 6px;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    margin-bottom: 8px;
}

.sg-business-kanban-column header i {
    align-items: center;
    background: rgba(255, 122, 24, .12);
    border-radius: 7px;
    color: var(--sg-primary);
    display: inline-flex;
    height: 22px;
    justify-content: center;
    width: 22px;
}

.sg-business-kanban-column header strong {
    color: var(--sg-text);
    font-size: .82rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-kanban-column header span {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    font-size: .72rem;
    font-weight: 850;
    min-width: 24px;
    padding: 2px 6px;
    text-align: center;
}

.sg-business-kanban-list {
    display: grid;
    gap: 6px;
}

.sg-business-kanban-card {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 9px;
    min-width: 0;
    overflow: hidden;
    transition: border-color .15s ease, transform .15s ease;
}

.sg-business-kanban-card:hover {
    border-color: rgba(255, 122, 24, .45);
    transform: translateY(-1px);
}

.sg-business-kanban-list a {
    align-items: start;
    color: inherit;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 8px;
    text-decoration: none;
    transition: border-color .15s ease, transform .15s ease;
}

.sg-business-kanban-list a:hover {
    color: inherit;
}

.sg-business-kanban-list strong,
.sg-business-kanban-list b {
    color: var(--sg-text);
    display: block;
    font-size: .78rem;
    line-height: 1.2;
}

.sg-business-kanban-list small,
.sg-business-kanban-list em {
    color: var(--sg-muted);
    display: block;
    font-size: .68rem;
    font-style: normal;
    margin-top: 2px;
}

.sg-business-kanban-actions {
    align-items: center;
    border-top: 1px solid var(--sg-border);
    display: flex;
    gap: 4px;
    justify-content: flex-end;
    padding: 6px;
}

.sg-business-kanban-actions form {
    margin: 0;
}

.sg-business-kanban-actions .sg-icon-button {
    height: 30px;
    width: 30px;
}

body.sg-theme-koyu .sg-business-kanban-column {
    background: var(--sg-surface-soft);
    border-color: var(--sg-border);
}

body.sg-theme-koyu .sg-business-kanban-card,
body.sg-theme-koyu .sg-business-kanban-column header span {
    background: var(--sg-surface);
    border-color: var(--sg-border);
}

.sg-business-revenue-bars {
    display: grid;
    gap: 8px;
}

.sg-business-revenue-bars article {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: 44px minmax(0, 1fr) auto 72px;
}

.sg-business-revenue-bars strong,
.sg-business-revenue-bars b {
    color: var(--sg-text);
    font-size: .82rem;
    white-space: nowrap;
}

.sg-business-revenue-bars small {
    color: var(--sg-muted);
    font-size: .72rem;
    text-align: right;
}

.sg-business-revenue-bars span {
    background: var(--sg-surface-soft);
    border-radius: 6px;
    display: block;
    height: 9px;
    overflow: hidden;
}

.sg-business-revenue-bars span i {
    background: var(--sg-primary);
    display: block;
    height: 100%;
}

.sg-admin-list-tools label span {
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 850;
    text-transform: uppercase;
}

.sg-admin-list-tools input,
.sg-admin-list-tools select {
    background: var(--sg-surface);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    font-size: .84rem;
    min-height: 34px;
    padding: 6px 10px;
}

.sg-admin-list-tools .sg-admin-list-status {
    flex: 0 0 150px;
    min-width: 130px;
}

.sg-admin-list-tools small {
    color: var(--sg-muted);
    flex: 0 0 auto;
    font-size: .76rem;
    font-weight: 800;
    white-space: nowrap;
}

.sg-panel-addline {
    justify-content: flex-end;
    margin-top: -2px;
    margin-bottom: 8px;
}

.sg-admin-action-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.sg-admin-action-card {
    display: grid;
    gap: 5px;
    margin: 0;
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fbfdff;
}

.sg-admin-action-card i {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    color: var(--sg-primary);
    background: #f0fdfa;
    font-size: 1rem;
}

.sg-admin-action-card strong {
    color: var(--sg-text);
    font-size: .8rem;
    line-height: 1.2;
}

.sg-admin-action-card small {
    min-height: 32px;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.3;
}

.sg-admin-action-card .btn {
    justify-self: start;
    min-height: 28px;
    padding: 5px 8px;
    border-radius: 6px;
    font-size: .66rem;
    font-weight: 820;
}

.sg-admin-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.sg-admin-feature-list {
    display: grid;
    gap: 6px;
}

.sg-admin-feature-list article {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 7px;
    padding: 8px 9px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fbfdff;
}

.sg-admin-feature-list strong,
.sg-admin-feature-list small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-admin-feature-list strong {
    color: var(--sg-text);
    font-size: .78rem;
    line-height: 1.2;
}

.sg-admin-feature-list small {
    margin-top: 3px;
    color: var(--sg-muted);
    font-size: .66rem;
}

.sg-admin-feature-list a,
.sg-admin-feature-list span {
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 7px;
    border-radius: 6px;
    font-size: .64rem;
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
}

.sg-admin-feature-list a {
    color: var(--sg-primary);
    background: #f0fdfa;
}

.sg-admin-feature-list span.is-ok {
    color: #166534;
    background: #dcfce7;
}

.sg-admin-feature-list span.is-list {
    color: #075985;
    background: #e0f2fe;
}

.sg-admin-feature-list span.is-wait {
    color: #92400e;
    background: #fef3c7;
}

.sg-admin-detail-list strong {
    display: block;
    overflow: hidden;
    color: var(--sg-text);
    font-size: .82rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-admin-detail-list small {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-admin-detail-list span,
.sg-admin-detail-list time {
    padding: 5px 7px;
    border-radius: 6px;
    color: #334155;
    background: #f1f5f9;
    font-size: .68rem;
    font-weight: 780;
    line-height: 1;
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .sg-panel-stat-grid,
    .sg-panel-card-grid,
    .sg-panel-grid-2,
    .sg-admin-module-grid,
    .sg-admin-module-grid.is-compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .sg-panel-nav {
        display: flex;
        flex-wrap: nowrap;
        gap: 4px;
        overflow-x: auto;
        padding: 5px;
        scrollbar-width: none;
    }

    .sg-panel-nav::-webkit-scrollbar {
        display: none;
    }

    .sg-panel-nav-group {
        min-width: 0;
        flex: 0 0 auto;
    }

    .sg-panel-nav-group summary {
        justify-content: center;
        padding: 8px 7px;
        font-size: .66rem;
    }

    .sg-panel-nav-group summary i {
        font-size: .9rem;
    }

    .sg-panel-nav-group[open] > .sg-panel-dropdown {
        position: fixed;
        top: 112px;
        right: 8px;
        left: 8px;
        z-index: 40;
        max-height: min(60vh, 420px);
        overflow-y: auto;
    }

    .sg-panel-dropdown {
        min-width: 0;
    }

    .sg-panel-stat-grid,
    .sg-panel-card-grid,
    .sg-panel-grid-2,
    .sg-settings-group-grid,
    .sg-settings-group-fields,
    .sg-admin-module-grid,
    .sg-admin-module-grid.is-compact {
        grid-template-columns: 1fr;
    }

    .sg-panel-title-row,
    .sg-admin-module-detail-head {
        align-items: center;
        display: grid;
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .sg-panel-title-row .sg-panel-title {
        margin-bottom: 0;
    }

    .sg-admin-module-detail-head {
        padding-right: 54px;
    }

    .sg-admin-module-detail-head .sg-admin-module-icon {
        width: 42px;
        height: 42px;
        font-size: 1.08rem;
    }

    .sg-admin-module-detail-head h1,
    .sg-admin-module-detail-head p {
        display: block;
    }

    .sg-admin-module-detail-head h1 {
        margin: 2px 0 0;
        font-size: 1.05rem;
    }

    .sg-admin-module-detail-head p {
        margin: 4px 0 0;
        font-size: .76rem;
    }

    .sg-admin-detail-list article,
    .sg-admin-feature-list article {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 6px;
    }

    .sg-admin-record-list article {
        grid-template-columns: minmax(0, 1fr);
    }

    .sg-admin-detail-list article:has(.sg-admin-list-thumb) {
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .sg-admin-detail-list time {
        display: none;
    }

    .sg-admin-row-actions,
    .sg-admin-feature-list span {
        grid-column: 1 / -1;
        width: 100%;
    }

    .sg-admin-row-actions {
        justify-content: flex-end;
    }

    .sg-admin-record-meta {
        justify-content: flex-start;
    }

    .sg-admin-status-pill {
        justify-self: start;
    }

    .sg-admin-list-tools {
        align-items: stretch;
        flex-direction: column;
    }

    .sg-admin-list-tools form {
        width: 100%;
    }

    form.sg-admin-list-tools {
        align-items: stretch;
        flex-direction: column;
    }

    .sg-admin-list-tools small {
        white-space: normal;
    }

    .sg-business-dashboard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-business-kanban {
        grid-template-columns: 1fr;
    }

    .sg-business-finance-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-business-revenue-bars article {
        grid-template-columns: 42px minmax(0, 1fr) auto;
    }

    .sg-business-revenue-bars small {
        grid-column: 2 / -1;
        text-align: left;
    }

    .sg-admin-feature-grid {
        grid-template-columns: 1fr;
    }

    .sg-admin-edit-form {
        grid-template-columns: 1fr;
    }

    .sg-admin-field-group-body {
        grid-template-columns: 1fr;
    }

    .sg-admin-field-group summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .sg-admin-field-group summary small {
        text-align: left;
    }

    .sg-admin-action-grid {
        grid-template-columns: 1fr;
    }
}

body.sg-theme-koyu :is(.sg-panel-nav a, .sg-panel-stat-grid article, .sg-panel-card, .sg-panel-list a, .sg-panel-table) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-panel-nav,
body.sg-theme-koyu .sg-panel-dropdown {
    border-color: #263244 !important;
    background: #111827 !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-panel-nav-group summary {
    color: #e5e7eb !important;
}

body.sg-theme-koyu .sg-panel-dropdown a {
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-admin-module-card, .sg-admin-detail-list article, .sg-admin-check-field) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
    box-shadow: none !important;
}

body.sg-theme-koyu .sg-admin-switch,
.sg-business-theme-koyu .sg-admin-switch {
    border-color: #334155;
    background: #1e293b;
    color: #cbd5e1;
}

body.sg-theme-koyu .sg-admin-switch-input:checked + .sg-admin-switch,
.sg-business-theme-koyu .sg-admin-switch-input:checked + .sg-admin-switch {
    border-color: rgba(34, 197, 94, .55);
    background: rgba(22, 101, 52, .45);
    color: #bbf7d0;
}

body.sg-theme-koyu .sg-admin-action-card {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
}

body.sg-theme-koyu .sg-admin-action-card strong {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-admin-action-card small {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu :is(.sg-admin-edit-form input, .sg-admin-edit-form select, .sg-admin-edit-form textarea) {
    color: #f8fafc !important;
    border-color: #334155 !important;
    background: #111827 !important;
}

body.sg-theme-koyu .sg-admin-edit-form label {
    color: #e5e7eb !important;
}

body.sg-theme-koyu :is(.sg-admin-feature-list article) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
}

body.sg-theme-koyu .sg-admin-feature-list strong {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-admin-feature-list small {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu :is(.sg-admin-module-card strong, .sg-admin-module-counts b, .sg-admin-module-detail-head h1, .sg-admin-detail-list strong) {
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-admin-module-card small, .sg-admin-module-detail-head p, .sg-admin-detail-list small, .sg-admin-module-detail-head span:not(.sg-admin-module-icon)) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu :is(.sg-admin-detail-list span, .sg-admin-detail-list time) {
    color: #dbeafe !important;
    background: #1e293b !important;
}

body.sg-theme-koyu .sg-admin-record-meta span,
.sg-business-theme-koyu .sg-admin-record-meta span {
    border-color: rgba(148, 163, 184, .28) !important;
    background: #1e293b !important;
    color: #dbeafe !important;
}

body.sg-theme-koyu .sg-admin-status-pill,
.sg-business-theme-koyu .sg-admin-status-pill {
    border-color: rgba(251, 146, 60, .32) !important;
    background: rgba(251, 146, 60, .16) !important;
    color: #99f6e4 !important;
}

body.sg-theme-koyu .sg-admin-status-pill.is-active,
.sg-business-theme-koyu .sg-admin-status-pill.is-active {
    border-color: rgba(34, 197, 94, .45) !important;
    background: rgba(34, 197, 94, .18) !important;
    color: #bbf7d0 !important;
}

body.sg-theme-koyu .sg-admin-status-pill.is-passive,
.sg-business-theme-koyu .sg-admin-status-pill.is-passive {
    border-color: rgba(248, 113, 113, .45) !important;
    background: rgba(248, 113, 113, .16) !important;
    color: #fecaca !important;
}

/* Compact admin navigation: keep the Lazim-style grouped menu on one line. */
.sg-panel-page .sg-panel-nav {
    flex-wrap: nowrap !important;
    gap: 3px !important;
    overflow-x: auto;
    overflow-y: visible;
    margin-bottom: 10px !important;
    padding: 4px !important;
    scrollbar-width: thin;
}

.sg-panel-page .sg-panel-nav-group {
    flex: 0 0 auto;
}

.sg-panel-page .sg-panel-nav-group summary {
    min-height: 30px !important;
    gap: 4px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    font-size: .66rem !important;
    font-weight: 620 !important;
    letter-spacing: 0 !important;
}

.sg-panel-page .sg-panel-nav-group summary > i:first-child {
    font-size: .78rem !important;
}

.sg-panel-page .sg-panel-nav-caret {
    font-size: .58rem !important;
}

.sg-panel-page .sg-panel-dropdown {
    min-width: 218px !important;
    padding: 5px !important;
}

.sg-panel-page .sg-panel-dropdown a {
    min-height: 30px !important;
    gap: 5px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    font-size: .68rem !important;
    font-weight: 560 !important;
    letter-spacing: 0 !important;
}

.sg-panel-page .sg-panel-dropdown a i {
    font-size: .78rem !important;
}

.sg-panel-page .sg-panel-user-chip {
    min-height: 28px;
    padding: 5px 7px;
    font-size: .68rem;
}

@media (max-width: 767.98px) {
    .sg-panel-page .sg-panel-nav-group summary {
        font-size: .62rem !important;
    }

    .sg-panel-page .sg-panel-dropdown a {
        font-size: .66rem !important;
    }

    .sg-panel-user-chip span {
        max-width: 92px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

body.sg-theme-koyu :is(.sg-panel-list strong, .sg-panel-card strong, .sg-panel-stat-grid strong) {
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-panel-list small, .sg-panel-card small, .sg-panel-card p, .sg-panel-stat-grid span, .sg-panel-stat-grid small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-panel-table th {
    color: #a7b0c0 !important;
    background: #111827 !important;
}

.sg-business-panel-shell {
    max-width: 1180px;
    margin-top: 8px;
}

.sg-business-panel-shell + .sg-panel-page .sg-section {
    padding-top: 8px;
}

.sg-business-panel-shell .sg-panel,
.sg-panel-page.sg-business-theme-sistem .sg-panel,
.sg-panel-page.sg-business-theme-acik .sg-panel,
.sg-panel-page.sg-business-theme-koyu .sg-panel {
    margin-bottom: 10px;
    padding: 12px;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .045);
}

.sg-business-hero {
    gap: 10px;
    padding: 10px 12px;
    margin-bottom: 6px;
}

.sg-business-hero > div:first-child {
    min-width: 0;
}

.sg-business-hero > div:first-child > span {
    font-size: .64rem;
    letter-spacing: 0;
}

.sg-business-hero h1 {
    overflow: hidden;
    max-width: 100%;
    margin: 1px 0 2px;
    font-size: clamp(.98rem, 1.8vw, 1.2rem);
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-business-hero p {
    display: -webkit-box;
    overflow: hidden;
    max-width: 58ch;
    font-size: .76rem;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.sg-business-mini-stats {
    grid-template-columns: repeat(3, minmax(54px, 1fr));
    gap: 5px;
    min-width: 190px;
}

.sg-business-mini-stats article {
    padding: 6px 7px;
    border-radius: 7px;
}

.sg-business-mini-stats strong {
    font-size: .88rem;
}

.sg-business-mini-stats small {
    margin-top: 2px;
    font-size: .62rem;
}

.sg-panel-page.sg-business-theme-sistem .container,
.sg-panel-page.sg-business-theme-acik .container,
.sg-panel-page.sg-business-theme-koyu .container {
    max-width: 1180px !important;
}

.sg-panel-page.sg-business-theme-sistem .sg-section,
.sg-panel-page.sg-business-theme-acik .sg-section,
.sg-panel-page.sg-business-theme-koyu .sg-section {
    padding-top: 8px;
    padding-bottom: 18px;
}

.sg-panel-page.sg-business-theme-sistem,
.sg-panel-page.sg-business-theme-acik,
.sg-panel-page.sg-business-theme-koyu {
    font-size: .88rem;
}

.sg-panel-page.sg-business-theme-sistem .sg-panel-title,
.sg-panel-page.sg-business-theme-acik .sg-panel-title,
.sg-panel-page.sg-business-theme-koyu .sg-panel-title {
    gap: 8px;
    margin-bottom: 9px;
    padding: 8px 9px;
    border-radius: 7px;
}

.sg-panel-page.sg-business-theme-sistem .sg-panel-title span,
.sg-panel-page.sg-business-theme-acik .sg-panel-title span,
.sg-panel-page.sg-business-theme-koyu .sg-panel-title span {
    margin-bottom: 2px;
    padding: 3px 6px;
    border-radius: 4px;
    font-size: .56rem;
}

.sg-panel-page.sg-business-theme-sistem .sg-panel-title h1,
.sg-panel-page.sg-business-theme-acik .sg-panel-title h1,
.sg-panel-page.sg-business-theme-koyu .sg-panel-title h1,
.sg-panel-page.sg-business-theme-sistem .sg-panel-title h2,
.sg-panel-page.sg-business-theme-acik .sg-panel-title h2,
.sg-panel-page.sg-business-theme-koyu .sg-panel-title h2 {
    font-size: .92rem;
    line-height: 1.15;
}

.sg-panel-page.sg-business-theme-sistem .sg-panel-title p,
.sg-panel-page.sg-business-theme-acik .sg-panel-title p,
.sg-panel-page.sg-business-theme-koyu .sg-panel-title p {
    margin-top: 3px;
    font-size: .72rem;
    line-height: 1.25;
}

.sg-panel-page.sg-business-theme-sistem .sg-panel-title-row,
.sg-panel-page.sg-business-theme-acik .sg-panel-title-row,
.sg-panel-page.sg-business-theme-koyu .sg-panel-title-row,
.sg-panel-page.sg-business-theme-sistem .sg-panel-backline,
.sg-panel-page.sg-business-theme-acik .sg-panel-backline,
.sg-panel-page.sg-business-theme-koyu .sg-panel-backline {
    gap: 6px;
    margin-bottom: 8px;
}

.sg-panel-page.sg-business-theme-sistem .btn,
.sg-panel-page.sg-business-theme-acik .btn,
.sg-panel-page.sg-business-theme-koyu .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 20px;
    padding: 6px 9px;
    border-radius: 7px;
    font-size: .72rem;
    font-weight: 780;
    line-height: 1;
    white-space: nowrap;
}

.sg-panel-page.sg-business-theme-sistem .btn i,
.sg-panel-page.sg-business-theme-acik .btn i,
.sg-panel-page.sg-business-theme-koyu .btn i {
    font-size: .86rem;
}

.sg-panel-page.sg-business-theme-sistem .sg-icon-button,
.sg-panel-page.sg-business-theme-acik .sg-icon-button,
.sg-panel-page.sg-business-theme-koyu .sg-icon-button {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    font-size: .82rem;
}

.sg-panel-page.sg-business-theme-sistem .sg-active-toggle-button,
.sg-panel-page.sg-business-theme-acik .sg-active-toggle-button,
.sg-panel-page.sg-business-theme-koyu .sg-active-toggle-button {
    width: 34px;
    height: 30px;
}

.sg-admin-module-detail-head {
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 8px;
}

.sg-admin-module-detail-head .sg-admin-module-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    font-size: 1rem;
}

.sg-admin-module-detail-head h1 {
    margin: 1px 0 2px;
    font-size: 1rem;
    line-height: 1.15;
}

.sg-admin-module-detail-head p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    font-size: .74rem;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.sg-admin-module-detail-head .sg-admin-module-counts {
    align-self: start;
    min-width: 48px;
    padding: 5px 7px;
    border-radius: 7px;
}

.sg-admin-module-detail-head .sg-admin-module-counts b {
    font-size: .88rem;
}

.sg-admin-module-detail-head .sg-admin-module-counts em {
    font-size: .58rem;
}

.sg-business-list-tools,
.sg-admin-list-tools {
    gap: 6px;
    padding: 8px !important;
}

.sg-business-list-tools form,
.sg-admin-list-tools form,
form.sg-admin-list-tools {
    align-items: end;
    gap: 6px;
}

.sg-admin-list-tools label {
    gap: 3px;
    min-width: 130px;
}

.sg-admin-list-tools label span {
    font-size: .62rem;
}

.sg-admin-list-tools input,
.sg-admin-list-tools select,
.sg-admin-edit-form input,
.sg-admin-edit-form select,
.sg-admin-edit-form textarea {
    min-height: 32px;
    border-radius: 7px;
    font-size: .78rem;
    padding: 6px 8px;
}

.sg-admin-edit-form {
    gap: 8px;
}

.sg-admin-edit-form label {
    gap: 4px;
    font-size: .76rem;
}

.sg-admin-edit-form label > span {
    font-size: .66rem;
    line-height: 1.15;
}

.sg-admin-check-field {
    min-height: 36px;
    padding: 7px 8px;
    border-radius: 7px;
}

.sg-admin-form-actions {
    margin-top: 2px;
}

.sg-business-dashboard-grid,
.sg-business-finance-grid,
.sg-business-kanban,
.sg-panel-stat-grid,
.sg-panel-grid-2,
.sg-panel-card-grid {
    gap: 8px;
}

.sg-business-dashboard-grid article,
.sg-business-finance-grid article,
.sg-panel-stat-grid article,
.sg-panel-card {
    padding: 9px;
    border-radius: 8px;
}

.sg-business-dashboard-grid span,
.sg-business-dashboard-grid small,
.sg-business-finance-grid span,
.sg-panel-stat-grid span,
.sg-panel-stat-grid small {
    font-size: .66rem;
}

.sg-business-dashboard-grid strong,
.sg-business-finance-grid strong,
.sg-panel-stat-grid strong {
    font-size: .96rem;
}

.sg-admin-detail-list,
.sg-panel-list,
.sg-business-revenue-bars,
.sg-business-kanban-list {
    gap: 6px;
}

.sg-admin-detail-list article {
    min-width: 0;
    gap: 7px;
    padding: 8px 9px;
    border-radius: 8px;
}

.sg-business-detail-list article {
    grid-template-columns: minmax(0, 1.7fr) auto minmax(78px, auto) auto;
}

.sg-business-detail-list article:has(.sg-business-row-image) {
    grid-template-columns: 44px minmax(0, 1.7fr) auto minmax(78px, auto) auto;
}

.sg-business-row-image {
    width: 42px;
    height: 42px;
    border-radius: 7px;
}

.sg-admin-detail-list strong,
.sg-panel-list strong,
.sg-panel-card strong {
    font-size: .78rem;
}

.sg-admin-detail-list small,
.sg-panel-list small,
.sg-panel-card p {
    font-size: .66rem;
}

.sg-admin-detail-list > article > span,
.sg-admin-detail-list time,
.sg-admin-status-pill,
.sg-panel-badge {
    min-height: 20px;
    padding: 4px 6px;
    border-radius: 5px;
    font-size: .62rem;
}

.sg-admin-row-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    min-width: 0;
}

.sg-admin-row-actions form {
    margin: 0;
}

.sg-panel-table th,
.sg-panel-table td {
    padding: 8px;
    font-size: .74rem;
}

.sg-panel-table th {
    font-size: .62rem;
}

.sg-business-order-watch {
    padding: 7px 8px;
    border-radius: 8px;
}

.sg-business-order-watch-info strong {
    font-size: .78rem;
}

.sg-business-order-watch-info small {
    font-size: .68rem;
}

.sg-business-order-stats {
    gap: 5px;
    margin-bottom: 8px;
}

.sg-business-order-stats a {
    padding: 6px;
    border-radius: 7px;
}

.sg-business-order-stats strong {
    font-size: .82rem;
}

.sg-business-order-stats small {
    font-size: .6rem;
}

.sg-business-order-card {
    gap: 7px;
    padding: 8px 9px !important;
}

.sg-business-order-card h2 {
    font-size: .84rem !important;
}

.sg-business-kanban {
    grid-template-columns: repeat(4, minmax(190px, 1fr));
}

.sg-business-kanban-column {
    padding: 7px;
    border-radius: 8px;
}

.sg-business-kanban-column header {
    grid-template-columns: 20px minmax(0, 1fr) auto;
    gap: 5px;
    margin-bottom: 6px;
}

.sg-business-kanban-column header i {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    font-size: .76rem;
}

.sg-business-kanban-column header strong {
    font-size: .76rem;
}

.sg-business-kanban-card {
    border-radius: 8px;
}

.sg-business-kanban-list a {
    gap: 6px;
    padding: 7px;
}

.sg-business-kanban-list strong,
.sg-business-kanban-list b {
    font-size: .72rem;
}

.sg-business-kanban-list small,
.sg-business-kanban-list em {
    font-size: .62rem;
}

.sg-business-kanban-actions {
    padding: 5px;
}

.sg-business-revenue-bars article {
    grid-template-columns: 40px minmax(0, 1fr) auto 64px;
}

.sg-business-revenue-bars strong,
.sg-business-revenue-bars b {
    font-size: .76rem;
}

.sg-business-revenue-bars small {
    font-size: .66rem;
}

.sg-business-hours-grid {
    gap: 6px;
}

.sg-business-hours-grid article {
    padding: 8px;
    border-radius: 8px;
}

.sg-business-hours-grid strong {
    font-size: .76rem;
}

.sg-business-hours-edit-row {
    gap: 6px;
    padding: 8px;
    border-radius: 8px;
}

.sg-business-hours-slots {
    gap: 6px;
}

.sg-cart-layout.sg-business-order-detail {
    gap: 10px;
}

.sg-business-order-detail .sg-panel-title-row {
    align-items: center;
}

.sg-admin-order-grid {
    gap: 6px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 8px 0;
}

.sg-admin-order-grid > div {
    gap: 2px;
    padding: 8px;
    border-radius: 8px;
}

.sg-admin-order-grid span,
.sg-admin-courier-form label {
    font-size: .64rem;
}

.sg-admin-order-grid strong {
    font-size: .78rem;
}

.sg-admin-order-grid small {
    font-size: .66rem;
}

.sg-business-order-detail .sg-cart-summary dl {
    gap: 0;
}

.sg-business-order-detail .sg-cart-summary dt,
.sg-business-order-detail .sg-cart-summary dd {
    padding: 6px 0;
    font-size: .74rem;
}

.sg-business-order-detail .sg-cart-summary dd {
    font-weight: 650;
}

.sg-admin-order-items .sg-cart-item {
    padding: 8px;
}

.sg-admin-order-items .sg-cart-item h2 {
    font-size: .82rem;
}

.sg-admin-order-items .sg-cart-item p {
    font-size: .7rem;
}

.sg-admin-courier-form {
    gap: 6px;
    padding: 8px;
    border-radius: 8px;
}

.sg-image-manager {
    display: grid;
    grid-column: 1 / -1;
    gap: 8px;
    min-width: 0;
    padding: 9px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: var(--sg-surface-2);
}

.sg-image-manager-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 84px;
    align-items: center;
    gap: 10px;
}

.sg-image-manager-head span,
.sg-image-upload-row label > span {
    display: block;
    color: var(--sg-muted);
    font-size: .62rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.sg-image-manager-head strong {
    display: block;
    margin-top: 3px;
    color: var(--sg-text);
    font-size: .84rem;
    line-height: 1.15;
}

.sg-image-manager-head small,
.sg-image-help {
    display: block;
    margin: 3px 0 0;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.25;
}

.sg-image-manager-head figure {
    width: 84px;
    height: 64px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    background: #fff;
}

.sg-image-manager-head img,
.sg-image-pool img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sg-image-pool {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
}

.sg-image-pool button {
    display: grid;
    grid-template-rows: 64px auto auto;
    gap: 4px;
    min-width: 0;
    padding: 5px;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    background: var(--sg-surface);
    text-align: left;
}

.sg-image-pool button.is-selected {
    border-color: var(--sg-primary);
    box-shadow: 0 0 0 2px rgba(0, 168, 132, .18);
}

.sg-image-pool button img {
    border-radius: 6px;
    background: #eef2f7;
}

.sg-image-pool button span,
.sg-image-pool button small {
    overflow: hidden;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-image-pool button span {
    font-size: .68rem;
    font-weight: 650;
}

.sg-image-pool button small {
    color: var(--sg-muted);
    font-size: .58rem;
}

.sg-image-upload-row {
    display: flex;
    align-items: end;
    gap: 7px;
}

.sg-image-upload-row label {
    display: grid;
    flex: 1 1 auto;
    gap: 4px;
    margin: 0;
}

.sg-image-progress {
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: #e5e7eb;
}

.sg-image-progress span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: var(--sg-primary);
    transition: width .18s ease;
}

.sg-business-theme-koyu .sg-image-manager,
.sg-business-theme-koyu .sg-image-pool button {
    border-color: #263244;
    background: #111827;
}

.sg-business-theme-koyu .sg-image-manager-head figure {
    border-color: #263244;
    background: #151c2a;
}

.sg-business-theme-koyu .sg-image-progress {
    background: #263244;
}

@media (max-width: 1199.98px) {
    .sg-business-kanban {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-business-hours-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .sg-business-store-switch {
        margin-top: 6px;
    }

    .sg-business-store-switch label {
        gap: 6px;
        font-size: .66rem;
    }

    .sg-business-store-switch select {
        min-height: 30px;
        width: min(100%, 190px);
        font-size: .72rem;
    }

    .sg-business-panel-shell {
        width: calc(100% - 10px);
        max-width: calc(100% - 10px);
        margin-top: 5px;
        padding-right: 0;
        padding-left: 0;
    }

    .sg-business-panel-shell .sg-panel {
        margin-bottom: 5px;
        padding: 8px;
    }

    .sg-business-hero {
        gap: 7px;
        padding: 8px;
    }

    .sg-business-hero h1 {
        font-size: .94rem;
    }

    .sg-business-hero p {
        font-size: .68rem;
    }

    .sg-business-mini-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 4px;
    }

    .sg-business-mini-stats article {
        padding: 5px 4px;
    }

    .sg-business-mini-stats strong {
        font-size: .78rem;
    }

    .sg-business-mini-stats small {
        font-size: .56rem;
    }

    .sg-panel-page.sg-business-theme-sistem .sg-section,
    .sg-panel-page.sg-business-theme-acik .sg-section,
    .sg-panel-page.sg-business-theme-koyu .sg-section {
        padding-top: 5px !important;
        padding-bottom: 12px !important;
    }

    .sg-panel-page.sg-business-theme-sistem .sg-section > .container,
    .sg-panel-page.sg-business-theme-acik .sg-section > .container,
    .sg-panel-page.sg-business-theme-koyu .sg-section > .container {
        width: calc(100% - 10px) !important;
        max-width: calc(100% - 10px) !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .sg-panel-page.sg-business-theme-sistem .sg-panel,
    .sg-panel-page.sg-business-theme-acik .sg-panel,
    .sg-panel-page.sg-business-theme-koyu .sg-panel {
        margin-bottom: 7px;
        padding: 9px;
    }

    .sg-panel-page.sg-business-theme-sistem .sg-panel-title,
    .sg-panel-page.sg-business-theme-acik .sg-panel-title,
    .sg-panel-page.sg-business-theme-koyu .sg-panel-title {
        padding: 7px;
        margin-bottom: 7px;
    }

    .sg-panel-page.sg-business-theme-sistem .sg-panel-title h1,
    .sg-panel-page.sg-business-theme-acik .sg-panel-title h1,
    .sg-panel-page.sg-business-theme-koyu .sg-panel-title h1,
    .sg-panel-page.sg-business-theme-sistem .sg-panel-title h2,
    .sg-panel-page.sg-business-theme-acik .sg-panel-title h2,
    .sg-panel-page.sg-business-theme-koyu .sg-panel-title h2 {
        font-size: .86rem;
    }

    .sg-panel-page.sg-business-theme-sistem .sg-panel-title p,
    .sg-panel-page.sg-business-theme-acik .sg-panel-title p,
    .sg-panel-page.sg-business-theme-koyu .sg-panel-title p {
        display: -webkit-box;
        overflow: hidden;
        font-size: .66rem;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .sg-panel-title-action,
    .sg-panel-backline {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .sg-admin-module-detail-head {
        grid-template-columns: 34px minmax(0, 1fr) auto !important;
        gap: 7px;
        padding: 8px;
    }

    .sg-admin-module-detail-head .sg-admin-module-icon {
        width: 34px;
        height: 34px;
        font-size: .88rem;
    }

    .sg-admin-module-detail-head h1 {
        font-size: .9rem;
    }

    .sg-admin-module-detail-head p {
        font-size: .66rem;
        -webkit-line-clamp: 1;
    }

    .sg-admin-module-detail-head .sg-admin-module-counts {
        min-width: 42px;
        padding: 4px 5px;
    }

    .sg-admin-list-tools,
    .sg-business-list-tools {
        padding: 7px !important;
    }

    .sg-business-list-tools form,
    .sg-admin-list-tools form,
    form.sg-admin-list-tools {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto auto;
        align-items: end;
        width: 100%;
    }

    .sg-admin-list-tools label {
        min-width: 0;
    }

    .sg-admin-list-tools .sg-admin-list-status {
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
    }

    .sg-admin-list-tools small {
        width: 100%;
        font-size: .66rem;
    }

    .sg-admin-edit-form,
    .sg-admin-action-grid,
    .sg-admin-feature-grid {
        grid-template-columns: 1fr !important;
    }

    .sg-business-dashboard-grid,
    .sg-business-finance-grid,
    .sg-panel-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px;
    }

    .sg-panel-grid-2,
    .sg-panel-card-grid,
    .sg-business-kanban,
    .sg-business-hours-edit-row {
        grid-template-columns: 1fr !important;
    }

    .sg-business-hours-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .sg-business-detail-list article,
    .sg-business-detail-list article:has(.sg-business-row-image) {
        grid-template-columns: 40px minmax(0, 1fr) auto !important;
    }

    .sg-business-detail-list article:not(:has(.sg-business-row-image)) {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    .sg-business-row-image {
        width: 38px;
        height: 38px;
    }

    .sg-admin-detail-list time,
    .sg-admin-row-actions,
    .sg-admin-inline-form {
        grid-column: 1 / -1;
    }

    .sg-admin-row-actions {
        width: 100%;
        justify-content: flex-end;
    }

    .sg-business-order-stats {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .sg-business-order-card {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    .sg-business-order-actions {
        grid-column: 1 / -1;
    }

    .sg-admin-order-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-business-order-detail.sg-cart-layout {
        grid-template-columns: 1fr;
    }

    .sg-admin-courier-form {
        align-items: stretch;
        flex-direction: column;
    }

    .sg-image-manager-head {
        grid-template-columns: minmax(0, 1fr) 72px;
    }

    .sg-image-manager-head figure {
        width: 72px;
        height: 58px;
    }

    .sg-image-pool {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-image-upload-row {
        align-items: stretch;
        flex-direction: column;
    }

    .sg-business-revenue-bars article {
        grid-template-columns: 36px minmax(0, 1fr) auto;
    }

    .sg-business-revenue-bars small {
        grid-column: 2 / -1;
        text-align: left;
    }
}

@media (max-width: 399.98px) {
    .sg-business-detail-list article,
    .sg-business-detail-list article:has(.sg-business-row-image),
    .sg-business-detail-list article:not(:has(.sg-business-row-image)) {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    .sg-business-row-image {
        display: none;
    }

    .sg-admin-order-grid,
    .sg-business-dashboard-grid,
    .sg-business-finance-grid,
    .sg-panel-stat-grid {
        grid-template-columns: 1fr 1fr !important;
    }
}

.sg-business-theme-koyu {
    color: #f8fafc !important;
    background: #0b1220 !important;
}

.sg-business-theme-koyu :is(.sg-panel, .sg-panel-nav, .sg-panel-dropdown, .sg-business-kanban-column, .sg-business-kanban-card, .sg-panel-list a, .sg-order-card, .sg-cart-item, .sg-cart-summary, .sg-address-box, .sg-admin-courier-form, .sg-business-order-watch, .sg-business-order-stats a, .sg-admin-detail-list article, .sg-admin-check-field, .sg-admin-action-card, .sg-admin-feature-list article) {
    color: #f8fafc !important;
    border-color: #263244 !important;
    background: #151c2a !important;
    box-shadow: none !important;
}

.sg-business-theme-koyu :is(h1, h2, h3, h4, h5, h6, strong, b, label, dt, dd, .sg-panel-title h1, .sg-panel-title h2, .sg-panel-list strong, .sg-admin-detail-list strong, .sg-business-kanban-list strong, .sg-business-kanban-list b) {
    color: #f8fafc !important;
}

.sg-business-theme-koyu :is(p, small, span, em, .sg-muted-line, .sg-panel-title span, .sg-panel-title p, .sg-business-kanban-list small, .sg-business-kanban-list em, .sg-panel-list small, .sg-admin-detail-list small) {
    color: #a7b0c0 !important;
}

.sg-business-theme-koyu :is(input, select, textarea, .form-control) {
    color: #f8fafc !important;
    border-color: #334155 !important;
    background: #101827 !important;
}

.sg-business-theme-koyu :is(.btn-light, .btn-outline-secondary, .sg-icon-button) {
    color: #e5e7eb !important;
    border-color: #334155 !important;
    background: #1f2937 !important;
}

.sg-business-theme-koyu :is(.btn-light:hover, .btn-outline-secondary:hover, .sg-icon-button:hover, .sg-panel-dropdown a:hover, .sg-panel-dropdown a.is-active) {
    color: #fff !important;
    border-color: rgba(0, 168, 132, .55) !important;
    background: #293449 !important;
}

.sg-business-theme-koyu :is(.btn-primary, .sg-icon-button-primary) {
    color: #fff !important;
    border-color: #0f766e !important;
    background: #0f766e !important;
}

.sg-business-theme-koyu .sg-icon-button-danger {
    color: #fecaca !important;
    border-color: rgba(248, 113, 113, .45) !important;
    background: rgba(127, 29, 29, .72) !important;
}

.sg-business-zen .sg-business-hero,
.sg-business-zen .sg-business-dashboard-grid,
.sg-business-zen .sg-business-revenue-bars,
.sg-business-zen .sg-admin-feature-list {
    display: none !important;
}

.sg-business-zen.sg-panel-page .sg-section {
    padding-top: 8px !important;
}

/* Admin order operations: readable list links, compact detail metrics, and responsive courier assignment. */
.sg-panel-link {
    color: inherit;
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
    text-decoration: none;
}

.sg-panel-link:hover {
    color: var(--sg-primary);
}

.sg-panel-link small {
    color: var(--sg-muted);
    font-size: .78rem;
    font-weight: 600;
}

.sg-panel-backline {
    display: flex;
    align-items: center;
    margin: 0 0 10px;
}

.sg-admin-order-layout {
    align-items: flex-start;
}

.sg-admin-order-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 12px 0;
}

.sg-admin-order-grid > div {
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
    padding: 10px;
}

.sg-admin-order-grid span,
.sg-admin-courier-form label {
    color: var(--sg-muted);
    font-size: .76rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sg-admin-order-grid strong,
.sg-admin-order-grid small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-admin-order-grid strong {
    color: var(--sg-ink);
    font-size: .9rem;
}

.sg-admin-order-grid small {
    color: var(--sg-muted);
    font-weight: 600;
}

.sg-admin-order-items .sg-cart-item {
    grid-template-columns: minmax(0, 1fr) auto;
}

.sg-admin-courier-form {
    background: linear-gradient(180deg, #f0fdfa, #fff);
    border: 1px solid #99f6e4;
    border-radius: 9px;
    display: flex;
    flex-direction: row;
    align-items: end;
    gap: 8px;
    margin-top: 12px;
    padding: 10px;
}

.sg-admin-courier-form .sg-courier-select-field {
    flex: 1 1 auto;
    min-width: 0;
}

.sg-admin-courier-form > div {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.sg-admin-courier-form label span {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    margin-bottom: 5px;
}

.sg-admin-courier-form .form-select,
.sg-admin-courier-form select {
    appearance: none;
    background-color: #fff;
    background-image: linear-gradient(45deg, transparent 50%, #94a3b8 50%), linear-gradient(135deg, #94a3b8 50%, transparent 50%);
    background-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%;
    background-repeat: no-repeat;
    background-size: 5px 5px, 5px 5px;
    border: 1px solid #e2e8f0;
    border-radius: 7px;
    color: var(--sg-ink);
    font-size: .84rem;
    font-weight: 650;
    min-height: 38px;
    padding: 8px 30px 8px 10px;
    width: 100%;
}

.sg-admin-courier-form .btn {
    min-height: 38px;
    white-space: nowrap;
}

body.sg-theme-koyu .sg-business-order-detail .sg-cart-summary .sg-business-order-payable,
.sg-business-theme-koyu .sg-business-order-detail .sg-cart-summary .sg-business-order-payable {
    background: rgba(251, 146, 60, .14);
    border-color: rgba(251, 146, 60, .34);
    color: #99f6e4;
}

body.sg-theme-koyu .sg-admin-courier-form,
.sg-business-theme-koyu .sg-admin-courier-form {
    background: #0f172a;
    border-color: #334155;
}

body.sg-theme-koyu .sg-admin-courier-form .form-select,
body.sg-theme-koyu .sg-admin-courier-form select,
.sg-business-theme-koyu .sg-admin-courier-form .form-select,
.sg-business-theme-koyu .sg-admin-courier-form select {
    background-color: #111827;
    border-color: #334155;
    color: #f8fafc;
}

.sg-admin-action-list {
    margin-top: 12px;
}

@media (max-width: 767.98px) {
    .sg-courier-timeline {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-courier-route {
        grid-template-columns: 1fr;
    }

    .sg-courier-action-strip {
        grid-template-columns: repeat(4, 34px);
    }

    .sg-courier-action-strip .sg-icon-button {
        height: 34px;
        width: 34px;
    }

    .sg-admin-order-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-admin-courier-form > div {
        grid-template-columns: 1fr;
    }

    .sg-business-actions,
    .sg-business-order-timeline {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-business-order-detail .sg-cart-summary dl {
        grid-template-columns: minmax(70px, .55fr) minmax(0, 1fr);
    }

    .sg-admin-courier-form {
        align-items: stretch;
        flex-direction: column;
    }

    .sg-admin-courier-form .btn {
        width: 100%;
    }
}

@media print {
    body {
        background: #fff !important;
        color: #111827 !important;
    }

    .sg-no-print,
    .sg-web-header,
    .sg-footer,
    .sg-customer-footerbar,
    .sg-panel-nav-shell,
    .sg-business-order-watch {
        display: none !important;
    }

    .sg-page,
    .sg-section,
    .container,
    .sg-cart-layout,
    .sg-panel {
        background: #fff !important;
        border: 0 !important;
        box-shadow: none !important;
        margin: 0 !important;
        max-width: none !important;
        padding: 0 !important;
        width: 100% !important;
    }

    .sg-cart-layout {
        display: block !important;
    }

    .sg-panel {
        break-inside: avoid;
        margin-bottom: 14px !important;
    }

    .sg-cart-item,
    .sg-address-box,
    .sg-admin-order-grid > div {
        border-color: #d1d5db !important;
    }
}

/* Store and courier panel cards: tighter mobile rhythm and clearer operational status. */
.sg-panel-order-list .sg-order-card {
    background: var(--sg-surface);
    border-radius: 12px;
    grid-template-columns: minmax(0, 1fr) auto 18px;
    min-width: 0;
}

.sg-panel-order-list .sg-order-card h2,
.sg-panel-order-list .sg-order-card p,
.sg-panel-order-list .sg-order-card span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-panel-order-list .sg-order-card-meta strong {
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .sg-panel-order-list .sg-order-card {
        gap: 8px;
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 11px;
    }

    .sg-panel-order-list .sg-order-card > .bi-chevron-right {
        display: none;
    }

    .sg-panel-order-list .sg-order-card-meta small {
        max-width: 104px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

/* Courier PWA login is intentionally separate from the customer web login. */
.sg-courier-login-page .sg-auth-card {
    border-top: 4px solid #111827;
}

.sg-courier-login-note {
    color: var(--sg-muted);
    font-size: .9rem;
    line-height: 1.45;
    margin: -4px 0 12px;
}

.sg-courier-login-card .btn-primary {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    width: 100%;
}

/* Admin is private; business and courier share a tabbed operational gate. */
.sg-admin-login-card,
.sg-ops-login-card {
    border-top: 4px solid #111827;
}

.sg-ops-tabs {
    background: var(--sg-surface-soft);
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 14px;
    padding: 5px;
}

.sg-ops-tabs a {
    align-items: center;
    border-radius: 9px;
    color: var(--sg-muted);
    display: inline-flex;
    font-size: .9rem;
    font-weight: 850;
    gap: 7px;
    justify-content: center;
    min-height: 40px;
    text-decoration: none;
}

.sg-ops-tabs a.is-active {
    background: var(--sg-primary);
    color: #fff;
    box-shadow: 0 10px 22px rgba(0, 168, 132, .2);
}

.sg-ops-login-note {
    color: var(--sg-muted);
    font-size: .9rem;
    line-height: 1.45;
    margin: -4px 0 12px;
}

.sg-admin-login-card .btn-primary,
.sg-ops-login-card .btn-primary {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    width: 100%;
}

/* Final admin nav behaviour: desktop dropdowns must not be clipped by the compact bar. */
.sg-panel-page .sg-panel-nav {
    flex-wrap: nowrap !important;
    gap: 3px !important;
    margin-bottom: 10px !important;
    padding: 4px !important;
}

.sg-panel-page .sg-panel-nav-group {
    flex: 0 0 auto;
    position: relative;
}

.sg-panel-page .sg-panel-nav-group[open] {
    z-index: 120;
}

.sg-panel-page .sg-panel-nav-group summary {
    min-height: 30px !important;
    gap: 4px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    font-size: .66rem !important;
    font-weight: 780 !important;
}

.sg-panel-page .sg-panel-nav-group summary > i:first-child {
    font-size: .78rem !important;
}

.sg-panel-page .sg-panel-nav-caret {
    font-size: .58rem !important;
}

.sg-panel-page .sg-panel-dropdown {
    min-width: 218px !important;
    padding: 5px !important;
}

.sg-panel-page .sg-panel-dropdown a {
    min-height: 30px !important;
    gap: 5px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    font-size: .68rem !important;
    font-weight: 760 !important;
}

.sg-panel-page .sg-panel-dropdown a i {
    font-size: .78rem !important;
}

@media (min-width: 768px) {
    .sg-panel-page .sg-panel-nav {
        overflow: visible !important;
    }
}

@media (max-width: 767.98px) {
    .sg-panel-page .sg-panel-nav {
        overflow-x: auto !important;
        overflow-y: visible !important;
        scrollbar-width: none;
    }

    .sg-panel-page .sg-panel-nav::-webkit-scrollbar {
        display: none;
    }

    .sg-panel-page .sg-panel-nav-group[open] > .sg-panel-dropdown {
        position: fixed !important;
        top: 112px !important;
        right: 8px !important;
        left: 8px !important;
        z-index: 140 !important;
        max-height: min(62vh, 420px);
        overflow-y: auto;
    }
}

/* Final login layout guard: the visual panel must never cover the form. */
.sg-auth-section .container {
    min-width: 0;
}

.sg-auth-shell {
    grid-template-columns: minmax(0, 460px) minmax(320px, 1fr);
    align-items: start;
    overflow: visible;
}

/* Bootstrap-compatible panel dropdowns. Scoped so older detail-based menus keep their rules. */
.sg-bootstrap-panel-nav {
    overflow: visible;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group {
    position: relative;
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle {
    min-height: 30px !important;
    gap: 4px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    font-size: .66rem !important;
    font-weight: 780 !important;
    letter-spacing: 0 !important;
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle > i:first-child {
    font-size: .78rem !important;
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle::after {
    display: none !important;
}

.sg-bootstrap-panel-nav .sg-panel-dropdown {
    display: none !important;
    min-width: 218px !important;
    padding: 5px !important;
    z-index: 140;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.show {
    z-index: 120;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.show > .sg-panel-dropdown,
.sg-bootstrap-panel-nav .sg-panel-dropdown.show {
    display: grid !important;
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: 0 !important;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.show .sg-panel-nav-caret {
    transform: rotate(180deg);
}

.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item {
    min-height: 30px !important;
    gap: 5px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    color: var(--sg-text);
    font-size: .68rem !important;
    font-weight: 760 !important;
    letter-spacing: 0 !important;
}

.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item i {
    font-size: .78rem !important;
}

.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item:hover,
.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item.is-active,
.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item.active {
    color: #fff !important;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

@media (max-width: 767.98px) {
    .sg-bootstrap-panel-nav {
        overflow-x: auto !important;
        overflow-y: visible !important;
        scrollbar-width: none;
    }

    .sg-bootstrap-panel-nav::-webkit-scrollbar {
        display: none;
    }

    .sg-bootstrap-panel-nav .sg-panel-nav-group.show > .sg-panel-dropdown,
    .sg-bootstrap-panel-nav .sg-panel-dropdown.show {
        position: fixed !important;
        top: 112px !important;
        right: 8px !important;
        left: 8px !important;
        max-height: min(62vh, 420px);
        overflow-y: auto;
    }
}

/* Final homepage Bootstrap theme override. */
.sg-bs-home :is(.sg-main-shell, .sg-home-shell, .sg-home-visitor-stack) {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home :is(.sg-home-head, .sg-home-block.card, .sg-store.card, .sg-product.card, .sg-category-circle) {
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
}

.sg-bs-home .sg-home-block.card {
    padding: 1rem !important;
}

.sg-bs-home .sg-home-block-title {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-block-title h2 {
    display: none !important;
}

.sg-bs-home .sg-promo-slider.carousel {
    display: block !important;
    overflow: hidden !important;
    gap: 0 !important;
}

.sg-bs-home .sg-promo-slider .carousel-item {
    min-width: 100% !important;
}

.sg-bs-home .sg-promo-slide {
    min-width: 0 !important;
    width: 100% !important;
    border-radius: var(--bs-border-radius-lg) !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid,
.sg-bs-home [data-home-carousel] {
    display: grid !important;
    grid-auto-flow: column !important;
    gap: .85rem !important;
    overflow-x: auto !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid {
    grid-auto-columns: minmax(230px, 270px) !important;
}

.sg-bs-home .sg-category-circles[data-home-carousel] {
    grid-auto-columns: minmax(150px, 180px) !important;
}

.sg-bs-home :is(.sg-store.card, .sg-product.card) {
    color: var(--bs-body-color) !important;
    text-decoration: none !important;
}

/* Responsive homepage grid: Bootstrap-like breakpoints instead of old horizontal strips. */
.sg-bs-home .sg-home-block:not(.sg-home-promo-panel) .sg-carousel-actions {
    display: none !important;
}

.sg-bs-home .sg-category-circles[data-home-carousel],
.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid {
    display: grid !important;
    grid-auto-flow: row !important;
    grid-auto-columns: initial !important;
    overflow: visible !important;
    padding: 0 !important;
    scrollbar-width: auto !important;
    scroll-snap-type: none !important;
}

.sg-bs-home .sg-category-circles[data-home-carousel] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid {
    grid-template-columns: 1fr !important;
}

.sg-bs-home .sg-category-circles[data-home-carousel] > *,
.sg-bs-home .sg-store-grid > *,
.sg-bs-home .sg-bestseller-grid > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    scroll-snap-align: unset !important;
}

.sg-bs-home .sg-store.card,
.sg-bs-home .sg-product.card,
.sg-bs-home .sg-category-circle {
    height: 100% !important;
}

.sg-bs-home .sg-card-media {
    aspect-ratio: 16 / 9 !important;
}

.sg-bs-home .sg-home-block-title {
    flex-wrap: wrap !important;
}

.sg-bs-home .sg-home-block-title > .btn {
    margin-left: auto !important;
}

@media (min-width: 576px) {
    .sg-bs-home .sg-category-circles[data-home-carousel] {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .sg-bs-home .sg-store-grid,
    .sg-bs-home .sg-bestseller-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 768px) {
    .sg-bs-home .sg-category-circles[data-home-carousel] {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }

    .sg-bs-home .sg-store-grid,
    .sg-bs-home .sg-bestseller-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 1200px) {
    .sg-bs-home .sg-category-circles[data-home-carousel] {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }

    .sg-bs-home .sg-store-grid,
    .sg-bs-home .sg-bestseller-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    .sg-bs-home .container {
        width: 100% !important;
        padding-right: .75rem !important;
        padding-left: .75rem !important;
    }

    .sg-bs-home .sg-home-copy h1 {
        font-size: 1.45rem !important;
    }

    .sg-bs-home .sg-home-copy p {
        font-size: .86rem !important;
    }

    .sg-bs-home .sg-home-block-title {
        align-items: flex-start !important;
    }

    .sg-bs-home .sg-home-block-title > .btn {
        width: 100% !important;
        margin-left: 0 !important;
    }

    .sg-bs-home .sg-category-tabs.nav-pills {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .sg-bs-home .sg-category-tabs.nav-pills .nav-link {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    .sg-bs-home .sg-category-circles[data-home-carousel] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .sg-bs-home .sg-store-grid,
    .sg-bs-home .sg-bestseller-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Last word for the homepage: Bootstrap owns the visible theme here. */
.sg-bs-home :is(.sg-main-shell, .sg-home-shell, .sg-home-visitor-stack) {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home :is(.sg-home-head, .sg-home-block.card, .sg-store.card, .sg-product.card, .sg-category-circle) {
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
}

.sg-bs-home .sg-home-block.card {
    padding: 1rem !important;
}

.sg-bs-home .sg-home-block-title {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-block-title h2 {
    display: none !important;
}

.sg-bs-home .sg-promo-slider.carousel {
    display: block !important;
    overflow: hidden !important;
    gap: 0 !important;
}

.sg-bs-home .sg-promo-slider .carousel-item {
    min-width: 100% !important;
}

.sg-bs-home .sg-promo-slide {
    min-width: 0 !important;
    width: 100% !important;
    border-radius: var(--bs-border-radius-lg) !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid,
.sg-bs-home [data-home-carousel] {
    display: grid !important;
    grid-auto-flow: column !important;
    gap: .85rem !important;
    overflow-x: auto !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid {
    grid-auto-columns: minmax(230px, 270px) !important;
}

.sg-bs-home .sg-category-circles[data-home-carousel] {
    grid-auto-columns: minmax(150px, 180px) !important;
}

.sg-bs-home :is(.sg-store.card, .sg-product.card) {
    color: var(--bs-body-color) !important;
    text-decoration: none !important;
}

/* Bootstrap-first homepage theme. Keeps data/logic hooks, replaces the old visual layer. */
.sg-bs-home {
    color: var(--bs-body-color) !important;
    background: var(--bs-light) !important;
}

.sg-bs-home .sg-main-shell,
.sg-bs-home .sg-home-shell,
.sg-bs-home .sg-home-visitor-stack {
    display: grid !important;
    gap: 1rem !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px) !important;
    gap: 1rem !important;
    align-items: center !important;
    min-height: auto !important;
    padding: 1rem !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    color: var(--bs-body-color) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
}

.sg-bs-home .sg-home-copy {
    display: grid !important;
    gap: .35rem !important;
    min-width: 0 !important;
}

.sg-bs-home .sg-home-copy > span,
.sg-bs-home .sg-home-block-title span {
    display: inline-flex !important;
    width: fit-content !important;
    min-height: 24px !important;
    align-items: center !important;
    padding: .25rem .5rem !important;
    border-radius: var(--bs-border-radius-pill) !important;
    color: var(--bs-primary) !important;
    background: rgba(var(--bs-primary-rgb), .1) !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-transform: none !important;
}

.sg-bs-home .sg-home-copy h1 {
    margin: 0 !important;
    color: var(--bs-heading-color) !important;
    font-size: clamp(1.65rem, 3vw, 2.75rem) !important;
    font-weight: 700 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
}

.sg-bs-home .sg-home-copy p {
    max-width: 58ch !important;
    margin: 0 !important;
    color: var(--bs-secondary-color) !important;
    font-size: .95rem !important;
    line-height: 1.45 !important;
}

.sg-bs-home .sg-home-search {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    gap: .5rem !important;
    align-items: center !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: .375rem !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-search > i {
    display: inline-flex !important;
    justify-content: center !important;
    color: var(--bs-secondary-color) !important;
    position: static !important;
    transform: none !important;
}

.sg-bs-home .sg-home-search .form-control {
    min-height: 38px !important;
    padding: .375rem .5rem !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-search .btn {
    min-height: 38px !important;
    padding-inline: 1rem !important;
}

.sg-bs-home .sg-home-block.card {
    display: grid !important;
    gap: .85rem !important;
    padding: 1rem !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    color: var(--bs-body-color) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
}

.sg-bs-home .sg-home-block-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .75rem !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-block-title > div:first-child {
    min-width: 0 !important;
}

.sg-bs-home .sg-home-block-title h2 {
    display: none !important;
}

.sg-bs-home .sg-carousel-actions,
.sg-bs-home .sg-promo-arrows {
    display: inline-flex !important;
    align-items: center !important;
    gap: .4rem !important;
}

.sg-bs-home .sg-carousel-actions .btn,
.sg-bs-home .sg-promo-arrows .btn {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border-radius: var(--bs-border-radius) !important;
}

.sg-bs-home .sg-promo-slider.carousel {
    display: block !important;
    overflow: hidden !important;
    gap: 0 !important;
    scroll-snap-type: none !important;
}

.sg-bs-home .sg-promo-slider .carousel-inner {
    overflow: hidden !important;
    border-radius: var(--bs-border-radius-lg) !important;
}

.sg-bs-home .sg-promo-slider .carousel-item {
    min-width: 100% !important;
}

.sg-bs-home .sg-promo-slide {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: clamp(190px, 28vw, 320px) !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: var(--bs-border-radius-lg) !important;
    color: #fff !important;
    background: #212529 !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-promo-slide img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.sg-bs-home .sg-promo-slide::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(90deg, rgba(0, 0, 0, .66), rgba(0, 0, 0, .18)) !important;
    z-index: 1 !important;
}

.sg-bs-home .sg-promo-slide > :not(img) {
    position: relative !important;
    z-index: 2 !important;
    margin-left: 1rem !important;
}

.sg-bs-home .sg-promo-slide > span {
    margin-top: 1rem !important;
    color: #fff !important;
    background: rgba(255, 255, 255, .18) !important;
}

.sg-bs-home .sg-promo-slide strong {
    display: block !important;
    max-width: 48ch !important;
    margin-top: .65rem !important;
    color: #fff !important;
    font-size: clamp(1.35rem, 3vw, 2.25rem) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

.sg-bs-home .sg-promo-slide small {
    display: block !important;
    max-width: 52ch !important;
    margin-top: .35rem !important;
    color: rgba(255, 255, 255, .88) !important;
    font-size: .9rem !important;
}

.sg-bs-home .sg-promo-slide em {
    display: inline-flex !important;
    margin-top: .85rem !important;
    margin-bottom: 1rem !important;
    padding: .45rem .7rem !important;
    border-radius: var(--bs-border-radius-pill) !important;
    color: #fff !important;
    background: var(--bs-primary) !important;
    font-style: normal !important;
    font-weight: 700 !important;
}

.sg-bs-home .sg-category-tabs.nav-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .5rem !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.sg-bs-home .sg-category-tabs.nav-pills .nav-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: .4rem !important;
    min-height: 38px !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-pill) !important;
    color: var(--bs-body-color) !important;
    background: var(--bs-body-bg) !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
}

.sg-bs-home .sg-category-tabs.nav-pills .nav-link.active,
.sg-bs-home .sg-category-tabs.nav-pills .nav-link.is-active {
    color: #fff !important;
    border-color: var(--bs-primary) !important;
    background: var(--bs-primary) !important;
}

.sg-bs-home .sg-category-tab-note {
    display: none !important;
}

.sg-bs-home [data-home-carousel] {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(180px, 1fr) !important;
    gap: .75rem !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: .15rem .1rem .35rem !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: thin !important;
}

.sg-bs-home [data-home-carousel] > * {
    scroll-snap-align: start !important;
}

.sg-bs-home .sg-category-circle {
    display: grid !important;
    justify-items: center !important;
    gap: .4rem !important;
    min-width: 0 !important;
    padding: .85rem !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    color: var(--bs-body-color) !important;
    background: var(--bs-body-bg) !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-category-circle > span {
    width: 64px !important;
    height: 64px !important;
    border-radius: 50% !important;
    background: var(--bs-tertiary-bg) !important;
}

.sg-bs-home .sg-category-circle img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    padding: .45rem !important;
}

.sg-bs-home .sg-category-circle strong,
.sg-bs-home .sg-store h3,
.sg-bs-home .sg-product h3 {
    margin: 0 !important;
    color: var(--bs-heading-color) !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.sg-bs-home .sg-category-circle small,
.sg-bs-home .sg-store p,
.sg-bs-home .sg-product p {
    margin: 0 !important;
    color: var(--bs-secondary-color) !important;
    font-size: .75rem !important;
    line-height: 1.35 !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(230px, 270px) !important;
    gap: .85rem !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: .15rem .1rem .45rem !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: thin !important;
}

.sg-bs-home .sg-store.card,
.sg-bs-home .sg-product.card {
    min-width: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    color: var(--bs-body-color) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
    scroll-snap-align: start !important;
    transition: transform .15s ease, box-shadow .15s ease !important;
}

.sg-bs-home .sg-store.card:hover,
.sg-bs-home .sg-product.card:hover {
    transform: translateY(-2px) !important;
    box-shadow: var(--bs-box-shadow) !important;
}

.sg-bs-home .sg-card-media {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 16 / 10 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: var(--bs-tertiary-bg) !important;
}

.sg-bs-home .sg-card-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.sg-bs-home .sg-store .card-body,
.sg-bs-home .sg-product .card-body {
    display: grid !important;
    gap: .45rem !important;
    padding: .75rem !important;
}

.sg-bs-home .sg-meta,
.sg-bs-home .sg-product-meta-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .35rem !important;
    margin: 0 !important;
}

.sg-bs-home .sg-meta span,
.sg-bs-home .sg-product-meta-row span,
.sg-bs-home .sg-card-rating,
.sg-bs-home .sg-card-ribbon,
.sg-bs-home .sg-card-price-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: .25rem !important;
    min-height: 24px !important;
    padding: .25rem .45rem !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-pill) !important;
    color: var(--bs-body-color) !important;
    background: var(--bs-body-bg) !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.sg-bs-home .sg-card-rating,
.sg-bs-home .sg-card-ribbon,
.sg-bs-home .sg-card-price-badge {
    position: absolute !important;
    z-index: 2 !important;
}

.sg-bs-home .sg-card-rating,
.sg-bs-home .sg-card-ribbon {
    top: .5rem !important;
    left: .5rem !important;
}

.sg-bs-home .sg-card-price-badge {
    right: .5rem !important;
    bottom: .5rem !important;
}

.sg-bs-home .sg-store-action,
.sg-bs-home .sg-product-discount:empty {
    display: none !important;
}

.sg-bs-home .sg-store-hours {
    display: inline-flex !important;
    align-items: center !important;
    gap: .35rem !important;
    color: var(--bs-secondary-color) !important;
    font-size: .72rem !important;
    font-style: normal !important;
}

@media (max-width: 991.98px) {
    .sg-bs-home .sg-home-head {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 575.98px) {
    .sg-bs-home {
        padding-bottom: 72px !important;
    }

    .sg-bs-home .sg-home-head,
    .sg-bs-home .sg-home-block.card {
        padding: .75rem !important;
    }

    .sg-bs-home .sg-home-search {
        grid-template-columns: 28px minmax(0, 1fr) !important;
    }

    .sg-bs-home .sg-home-search .btn {
        grid-column: 1 / -1 !important;
        width: 100% !important;
    }

    .sg-bs-home [data-home-carousel],
    .sg-bs-home .sg-store-grid,
    .sg-bs-home .sg-bestseller-grid {
        grid-auto-columns: minmax(180px, 82vw) !important;
    }

    .sg-bs-home .sg-category-tabs.nav-pills .nav-link {
        flex: 1 1 calc(50% - .5rem) !important;
        justify-content: center !important;
    }
}

/* Homepage Bootstrap-grade composition. */
.sg-home .sg-main-shell {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.sg-home .sg-home-head,
.sg-home .sg-home-block.card {
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: .9rem !important;
    background: #fff !important;
}

.sg-home .sg-home-block.card {
    padding: 14px !important;
}

.sg-home .sg-promo-slider.carousel {
    display: block !important;
    overflow: hidden !important;
    gap: 0 !important;
    scroll-snap-type: none !important;
}

.sg-home .sg-promo-slider .carousel-inner {
    border-radius: .75rem;
    overflow: hidden;
}

.sg-home .sg-promo-slider .carousel-item {
    min-width: 100% !important;
}

.sg-home .sg-promo-slider .sg-promo-slide {
    width: 100% !important;
    min-width: 0 !important;
    min-height: clamp(180px, 28vw, 300px);
    border-radius: .75rem !important;
}

.sg-home .sg-store.card,
.sg-home .sg-product.card {
    overflow: hidden;
    border-radius: .75rem !important;
    transition: transform .18s ease, box-shadow .18s ease;
}

.sg-home .sg-store.card:hover,
.sg-home .sg-product.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 32px rgba(15, 23, 42, .13) !important;
}

.sg-home .sg-store .card-body,
.sg-home .sg-product .card-body {
    padding: 10px !important;
}

.sg-home .sg-category-tabs.nav-pills {
    gap: 6px;
}

.sg-home .sg-category-tabs.nav-pills .nav-link {
    border-radius: .7rem;
}

.sg-home .sg-carousel-actions,
.sg-home .sg-promo-arrows {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

.sg-home .sg-carousel-actions .btn,
.sg-home .sg-promo-arrows .btn {
    width: 34px;
    min-width: 34px;
    height: 34px;
    padding: 0;
}

.sg-home .sg-home-search .form-control {
    border: 0;
    box-shadow: none;
}

.sg-home .sg-home-search .btn {
    min-height: 38px;
}

/* Homepage Bootstrap behaviour guards. */
.sg-start-order-modal.modal,
.sg-home-filter-modal.modal,
.sg-home-product-modal.modal {
    display: none;
    padding: 0;
}

.sg-start-order-modal.modal.show,
.sg-home-filter-modal.modal.show,
.sg-home-product-modal.modal.show {
    display: block;
}

.sg-start-order-modal .modal-dialog,
.sg-home-filter-modal .modal-dialog {
    max-width: 760px;
}

.sg-start-order-modal.modal,
.sg-home-filter-modal.modal {
    z-index: 1255 !important;
}

body:has(.sg-start-order-modal.show) .modal-backdrop.show,
body:has(.sg-home-filter-modal.show) .modal-backdrop.show {
    z-index: 1250 !important;
}

.sg-start-order-modal .modal-dialog,
.sg-home-filter-modal .modal-dialog {
    width: min(760px, calc(100% - 1rem)) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.sg-start-order-modal .modal-content,
.sg-home-filter-modal .modal-content {
    max-height: calc(100dvh - 1rem) !important;
    overflow: hidden !important;
    border-radius: 14px !important;
}

.sg-start-order-modal .modal-body,
.sg-home-filter-modal .modal-body {
    overflow-y: auto !important;
}

.sg-start-order-modal .btn-group .btn {
    min-height: 40px !important;
    font-weight: 800 !important;
}

.sg-start-order-modal .input-group > :is(.form-control, .input-group-text, .btn) {
    min-height: 42px !important;
}

.sg-start-order-modal [data-start-map],
.sg-home-filter-modal [data-filter-map] {
    min-height: clamp(240px, 45dvh, 420px) !important;
}

.sg-start-order-modal [data-start-map] .leaflet-container,
.sg-home-filter-modal [data-filter-map] .leaflet-container {
    z-index: 0 !important;
}

@media (max-width: 575.98px) {
    .sg-start-order-modal .modal-dialog {
        align-items: flex-end !important;
        margin: .5rem auto 0 !important;
        min-height: calc(100% - .5rem) !important;
        width: calc(100% - .5rem) !important;
    }

    .sg-home-filter-modal .modal-dialog {
        align-items: center !important;
        margin: .5rem auto !important;
        min-height: calc(100% - 1rem) !important;
        width: calc(100% - .5rem) !important;
    }

    .sg-start-order-modal .modal-content {
        border-radius: 14px 14px 0 0 !important;
        max-height: calc(100dvh - .5rem) !important;
    }

    .sg-home-filter-modal .modal-content {
        border-radius: 14px !important;
        max-height: calc(100dvh - 1rem) !important;
    }

    .sg-start-order-modal .modal-body,
    .sg-home-filter-modal .modal-body {
        padding: .75rem !important;
    }

    .sg-start-order-modal .btn-group {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .sg-start-order-modal .btn-group .btn {
        border-radius: 8px !important;
        font-size: .78rem !important;
        white-space: nowrap !important;
    }

    .sg-start-order-modal [data-start-map] {
        min-height: min(52dvh, 360px) !important;
    }
}

.sg-start-order-card-shell {
    border: 0;
    border-radius: 12px;
    background: transparent;
}

.sg-start-order-modal .sg-start-order-card {
    width: 100%;
    max-height: calc(100vh - 32px);
}

.sg-home-product-modal .modal-dialog {
    max-width: min(760px, calc(100% - 24px));
}

.sg-home-product-modal .sg-home-product-dialog {
    width: 100%;
}

.sg-home .sg-category-tabs .nav-link {
    color: #334155;
}

.sg-home .sg-category-tabs .nav-link.active,
.sg-home .sg-category-tabs .nav-link.is-active {
    color: #fff;
    background: var(--sg-primary);
}

.sg-home .sg-category-tab-panel.tab-pane.active {
    display: block;
}

.sg-auth-card-modern {
    min-width: 0;
    min-height: auto;
    overflow: visible;
    position: relative;
    z-index: 2;
}

.sg-auth-card-modern *,
.sg-auth-card-modern *::before,
.sg-auth-card-modern *::after {
    box-sizing: border-box;
}

.sg-auth-card-modern :is(.sg-auth-form, .sg-auth-form label, .sg-auth-row, .sg-auth-switch, .btn, input, select, textarea) {
    max-width: 100%;
    min-width: 0;
}

.sg-auth-card-modern .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding-block: 9px;
    width: 100%;
    white-space: normal;
}

.sg-auth-visual {
    min-width: 0;
    position: relative;
    z-index: 1;
}

@media (max-width: 1199.98px), (max-height: 720px) {
    .sg-auth-shell {
        display: block;
        max-width: 520px;
    }

    .sg-auth-visual {
        display: none !important;
    }
}

/* Clean customer login: fixed card, no image overlap, no clipped buttons. */
.sg-login-clean-shell {
    align-items: stretch;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    margin: 0 auto;
    max-width: 1120px;
    width: 100%;
}

.sg-login-clean {
    background: #fff;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
    display: grid;
    gap: 16px;
    margin: 0;
    max-width: none;
    padding: 24px;
    width: 100%;
}

.sg-login-clean,
.sg-login-clean * {
    box-sizing: border-box;
}

.sg-login-clean-head {
    align-items: start;
    background: linear-gradient(135deg, #f0fdfa, #ffffff);
    border: 1px solid rgba(20, 184, 166, .26);
    border-left: 4px solid #0f766e;
    border-radius: 10px;
    display: grid;
    gap: 5px;
    grid-template-columns: minmax(0, 1fr);
    padding: 10px 12px;
}

.sg-login-clean-head > span {
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    color: #134e4a;
    display: inline-flex;
    font-size: .68rem;
    font-weight: 900;
    justify-self: start;
    padding: 5px 8px;
    text-transform: uppercase;
}

.sg-login-clean-head h1 {
    color: var(--sg-text);
    font-size: 1.22rem;
    grid-column: 1 / -1;
    line-height: 1.15;
    margin: 0;
}

.sg-login-clean-head p {
    color: #475569;
    font-size: .82rem;
    line-height: 1.45;
    margin: 0;
}

.sg-login-clean-head .sg-auth-brand-mark {
    margin: 0;
    min-width: 0;
}

.sg-login-clean-head .sg-auth-brand-mark span {
    background: #0f766e;
    border-radius: 8px;
    height: 34px;
    width: 34px;
}

.sg-login-clean-head .sg-auth-brand-mark span :is(i, svg),
.sg-login-clean-head .sg-auth-brand-mark span [class^="bi-"]::before,
.sg-login-clean-head .sg-auth-brand-mark span [class*=" bi-"]::before {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-login-clean-head .sg-auth-brand-mark strong {
    font-size: .92rem;
}

.sg-login-clean-head .sg-auth-brand-mark .sg-login-role-badge-inline {
    align-self: center;
    background: #0f766e !important;
    border-color: #0f766e !important;
    color: #ffffff !important;
    display: inline-flex;
    margin: 0;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-login-clean-head .sg-auth-brand-mark .sg-login-role-badge-inline :is(i, span, strong, small, b) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-login-clean-form .btn {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    min-height: 44px;
    width: 100%;
}

.sg-login-clean .sg-auth-switch {
    margin-top: 0;
}

.sg-social-login {
    border-top: 1px solid var(--sg-border);
    display: grid;
    gap: 10px;
    padding-top: 2px;
}

.sg-social-login > span {
    color: var(--sg-muted);
    font-size: .72rem;
    font-weight: 800;
    text-align: center;
}

.sg-social-login > div {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-social-login-btn {
    align-items: center;
    background: #fff;
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    color: var(--sg-text);
    display: inline-flex;
    font-size: .82rem;
    font-weight: 850;
    gap: 8px;
    justify-content: center;
    min-height: 40px;
    padding: 9px 10px;
    text-decoration: none;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.sg-social-login-btn:hover {
    border-color: rgba(0, 168, 132, .45);
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
    color: var(--sg-text);
    transform: translateY(-1px);
}

.sg-social-login-btn:disabled {
    cursor: not-allowed;
    opacity: .58;
}

.sg-social-login-btn .bi-google {
    color: #dc2626;
}

.sg-social-login-btn .bi-facebook {
    color: #2563eb;
}

.sg-work-menu {
    border-top: 1px solid var(--sg-border);
    padding-top: 2px;
}

.sg-work-menu :is(button, a) {
    align-items: center;
    background: #ecfdf5;
    border: 1px solid #5eead4;
    border-radius: 8px;
    box-shadow: 0 6px 16px rgba(15, 118, 110, .08);
    color: #0f766e;
    cursor: pointer;
    display: grid;
    font-size: .78rem;
    font-weight: 750;
    gap: 7px;
    grid-template-columns: 20px minmax(0, max-content) 14px;
    justify-content: start;
    min-height: 36px;
    padding: 7px 9px;
    text-align: left;
    text-decoration: none;
    transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease, transform .16s ease;
    width: 100%;
}

.sg-work-menu :is(button, a):hover,
.sg-work-menu :is(button, a):focus-visible {
    background: #0f766e;
    border-color: #0f766e;
    box-shadow: 0 10px 24px rgba(15, 118, 110, .2);
    color: #ffffff;
    outline: none;
    transform: translateY(-1px);
}

.sg-work-menu :is(button, a):active {
    box-shadow: 0 4px 12px rgba(15, 118, 110, .16);
    transform: translateY(0);
}

.sg-work-menu :is(button, a) span {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-work-menu :is(button, a) i:first-child {
    align-items: center;
    background: #ccfbf1;
    border-radius: 7px;
    color: #0f766e;
    display: inline-flex;
    height: 20px;
    justify-content: center;
    width: 20px;
    font-size: .82rem;
}

.sg-work-menu :is(button, a):hover i:first-child,
.sg-work-menu :is(button, a):focus-visible i:first-child {
    background: rgba(255, 255, 255, .16);
    color: #ffffff;
}

.sg-work-menu :is(button, a):hover i:last-child,
.sg-work-menu :is(button, a):focus-visible i:last-child {
    color: #ffffff;
}

body.sg-theme-koyu .sg-social-login,
body.sg-theme-koyu .sg-work-menu {
    border-color: #263244;
}

body.sg-theme-koyu .sg-social-login-btn {
    background: #111827;
    border-color: #334155;
    color: #f8fafc;
}

body.sg-theme-koyu .sg-work-menu :is(button, a) {
    background: #102f2c;
    border-color: #2dd4bf;
    color: #d1fae5;
}

body.sg-theme-koyu .sg-work-menu :is(button, a):hover,
body.sg-theme-koyu .sg-work-menu :is(button, a):focus-visible {
    background: #14b8a6;
    border-color: #5eead4;
    color: #052e2b;
}

.sg-login-side-card {
    background: #111827;
    border-radius: 10px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
    color: #fff;
    display: grid;
    grid-template-rows: minmax(170px, 1fr) auto;
    min-height: 100%;
    overflow: hidden;
    width: 100%;
}

.sg-login-side-card img {
    height: 100%;
    min-height: 190px;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.sg-login-side-card > div {
    display: grid;
    gap: 9px;
    padding: 18px;
}

.sg-login-side-card span {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 850;
    gap: 6px;
    justify-self: start;
    padding: 7px 10px;
}

.sg-login-side-card h2 {
    font-size: 1.22rem;
    line-height: 1.15;
    margin: 0;
}

.sg-login-side-card p {
    color: rgba(255, 255, 255, .78);
    font-size: .86rem;
    line-height: 1.45;
    margin: 0;
}

.sg-login-side-card ul {
    display: grid;
    gap: 7px;
    list-style: none;
    margin: 3px 0 0;
    padding: 0;
}

.sg-login-side-card li {
    align-items: center;
    color: rgba(255, 255, 255, .9);
    display: inline-flex;
    font-size: .82rem;
    gap: 7px;
}

.sg-register-shell {
    align-items: stretch;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 615px) minmax(320px, 360px);
    justify-content: center;
    margin: 0 auto;
    max-width: 985px;
    width: 100%;
}

.sg-register-card,
.sg-register-side-card {
    border-radius: 10px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
    overflow: hidden;
}

.sg-register-card {
    background: #fff;
    border: 1px solid var(--sg-border);
    display: grid;
    gap: 10px;
    min-width: 0;
    order: 1;
    padding: 10px;
}

.sg-register-head {
    align-items: start;
    background: linear-gradient(135deg, #ecfeff 0%, #f0fdfa 55%, #ffffff 100%);
    border: 1px solid #99f6e4;
    border-left: 4px solid #0f766e;
    border-radius: 9px;
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(0, 1fr);
    padding: 10px;
}

.sg-register-head > span {
    align-self: start;
    background: #0f766e;
    border: 1px solid #0f766e;
    border-radius: 8px;
    color: #ffffff;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 900;
    justify-self: end;
    padding: 6px 9px;
    text-transform: uppercase;
}

.sg-register-head h1,
.sg-register-head p {
    grid-column: 1 / -1;
    margin: 0;
}

.sg-register-head h1 {
    color: var(--sg-text);
    font-size: 1.24rem;
    line-height: 1.15;
}

.sg-register-head p {
    color: var(--sg-muted);
    font-size: .82rem;
    line-height: 1.45;
}

.sg-register-head .sg-auth-brand-mark {
    margin: 0;
    min-width: 0;
}

.sg-register-head .sg-auth-brand-mark span {
    border-radius: 8px;
    height: 34px;
    width: 34px;
}

.sg-register-head .sg-auth-brand-mark strong {
    color: #0f3f3a;
    font-size: .96rem;
    font-weight: 900;
}

.sg-register-form .btn {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    min-height: 44px;
    width: 100%;
}

.sg-register-grid-2 {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sg-register-contract {
    align-items: flex-start;
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 8px;
    padding: 10px;
}

.sg-register-side-card {
    align-self: start;
    background: #0f172a;
    color: #fff;
    display: grid;
    grid-template-rows: auto auto;
    min-width: 0;
    order: 2;
}

.sg-register-side-media {
    background: #ead3b9;
    display: grid;
    height: auto;
    line-height: 0;
    min-height: 0;
    overflow: hidden;
    place-items: center;
}

.sg-register-side-media img {
    display: block;
    height: auto;
    max-height: none;
    min-height: 0;
    object-fit: contain;
    object-position: center;
    padding: 0;
    width: 100%;
}

.sg-register-side-content {
    align-content: start;
    background: linear-gradient(135deg, #0f172a 0%, #12343b 100%);
    display: grid;
    gap: 7px;
    padding: 10px 12px 12px;
}

.sg-register-side-content > span {
    align-items: center;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 14px;
    color: #ffffff;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 850;
    gap: 6px;
    justify-self: start;
    line-height: 1.1;
    max-width: max-content;
    padding: 6px 9px;
    white-space: nowrap;
}

.sg-register-side-content h2 {
    color: #ffffff;
    font-size: 1.16rem;
    line-height: 1.18;
    margin: 0;
}

.sg-register-side-content p {
    color: rgba(255, 255, 255, .9);
    font-size: .8rem;
    line-height: 1.38;
    margin: 0;
}

.sg-register-feature-grid {
    display: grid;
    gap: 5px;
    margin-top: 2px;
}

.sg-register-feature-grid strong {
    align-items: center;
    color: #ecfeff;
    display: inline-flex;
    font-size: .8rem;
    font-weight: 750;
    gap: 7px;
}

.sg-register-feature-grid i,
.sg-register-side-content > span i {
    color: #5eead4;
}

.sg-forgot-card {
    background: #fff;
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
    display: grid;
    gap: 14px;
    margin: 0 auto;
    max-width: 760px;
    padding: 22px;
    width: 100%;
}

.sg-forgot-back {
    align-items: center;
    color: var(--sg-muted);
    display: inline-flex;
    font-size: .84rem;
    font-weight: 750;
    gap: 7px;
    justify-self: start;
    text-decoration: none;
}

.sg-forgot-back:hover {
    color: var(--sg-primary);
}

.sg-forgot-icon {
    align-items: center;
    background: linear-gradient(135deg, var(--sg-primary), #14b8a6);
    border-radius: 14px;
    color: #fff;
    display: inline-flex;
    font-size: 1.35rem;
    height: 50px;
    justify-content: center;
    justify-self: center;
    width: 50px;
}

.sg-forgot-head {
    display: grid;
    gap: 7px;
    text-align: center;
}

.sg-forgot-head > span {
    color: var(--sg-primary);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-forgot-head h1 {
    color: var(--sg-text);
    font-size: 1.45rem;
    line-height: 1.15;
    margin: 0;
}

.sg-forgot-head p {
    color: var(--sg-muted);
    font-size: .88rem;
    line-height: 1.45;
    margin: 0 auto;
    max-width: 380px;
}

.sg-forgot-form .btn {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    min-height: 44px;
    width: 100%;
}

@media (min-width: 768px) {
    .sg-forgot-form {
        gap: 12px;
        grid-template-columns: minmax(0, .95fr) minmax(260px, 330px);
    }

    .sg-forgot-form > input[type="hidden"],
    .sg-forgot-form .btn {
        grid-column: 1 / -1;
    }
}

.sg-forgot-captcha {
    display: grid;
    gap: 0;
}

.sg-forgot-captcha > span {
    color: var(--sg-text);
    font-size: .86rem;
    font-weight: 800;
}

.sg-forgot-captcha .sg-captcha-row {
    align-items: center;
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 9px;
    display: grid;
    gap: 4px;
    grid-template-columns: auto auto minmax(92px, 1fr);
    min-height: 35px;
    padding: 4px;
}

.sg-forgot-captcha .sg-captcha-row > span {
    color: #12312f;
    font-size: .74rem;
    font-weight: 800;
    line-height: 1.05;
    white-space: nowrap;
}

.sg-forgot-captcha .sg-captcha-row strong {
    background: #ffffff;
    border: 1px solid #14b8a6;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(20, 184, 166, .16);
    color: #0f766e;
    font-size: .86rem;
    letter-spacing: 2px;
    line-height: 1;
    min-width: 72px;
    padding: 8px 9px;
    text-align: center;
    white-space: nowrap;
}

.sg-forgot-captcha .sg-captcha-row input {
    min-height: 30px;
    padding-left: 10px !important;
}

.sg-forgot-form .btn:disabled {
    background: #94a3b8 !important;
    border-color: #94a3b8 !important;
    color: #fff !important;
    cursor: not-allowed;
    opacity: 1;
}

@media (max-width: 575.98px) {
    .sg-forgot-captcha .sg-captcha-row {
        gap: 5px;
        grid-template-columns: auto auto minmax(76px, 1fr);
        padding: 6px;
    }

    .sg-forgot-captcha .sg-captcha-row > span {
        font-size: .68rem;
    }

    .sg-forgot-captcha .sg-captcha-row strong {
        font-size: .78rem;
        letter-spacing: 1.5px;
        min-width: 62px;
        padding: 7px 7px;
    }
}

@media (min-width: 768px) {
    .sg-login-clean {
        padding: 30px;
    }

    .sg-login-clean-form {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }

    .sg-login-clean-form > input[type="hidden"],
    .sg-login-clean-form .sg-auth-input,
    .sg-login-clean-form .sg-auth-row,
    .sg-login-clean-form .btn {
        grid-column: 1 / -1;
    }
}

@media (max-width: 991.98px) {
    .sg-login-clean-shell {
        display: block;
        max-width: 680px;
    }

    .sg-login-side-card {
        display: none;
    }

    .sg-register-shell {
        display: block;
        max-width: 680px;
    }

    .sg-register-side-card {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .sg-auth-page .sg-auth-section .container {
        padding-left: 10px;
        padding-right: 10px;
    }

    .sg-login-clean {
        border-radius: 8px;
        box-shadow: none;
        padding: 16px 12px;
    }

    .sg-register-card {
        border-radius: 8px;
        box-shadow: none;
        padding: 10px;
    }

    .sg-login-clean-head h1 {
        font-size: 1.08rem;
    }

    .sg-register-head h1 {
        font-size: 1.08rem;
    }

    .sg-login-clean-head,
    .sg-register-head {
        gap: 6px;
    }

    .sg-login-clean-head > span,
    .sg-register-head > span {
        font-size: .62rem;
        padding: 4px 7px;
    }

    .sg-login-clean-head p,
    .sg-register-head p {
        font-size: .78rem;
    }

    .sg-social-login > div {
        grid-template-columns: minmax(0, 1fr);
    }

    .sg-login-clean-head .sg-auth-brand-mark span,
    .sg-register-head .sg-auth-brand-mark span {
        height: 30px;
        width: 30px;
    }

    .sg-login-clean-head .sg-auth-brand-mark strong,
    .sg-register-head .sg-auth-brand-mark strong {
        font-size: .86rem;
    }

    .sg-register-grid-2 {
        grid-template-columns: minmax(0, 1fr);
    }

    .sg-forgot-card {
        border-radius: 8px;
        box-shadow: none;
        gap: 12px;
        padding: 14px 12px;
    }

    .sg-forgot-head h1 {
        font-size: 1.22rem;
    }

    .sg-forgot-head p {
        font-size: .82rem;
    }

.sg-forgot-captcha .sg-captcha-row {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Homepage marketplace cards: image on top, compact info below. */
.sg-home .sg-store-grid,
.sg-home .sg-bestseller-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sg-carousel-actions {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 1px;
    margin-left: auto;
}

.sg-carousel-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 6px;
    background: #ecfdf5;
    color: var(--sg-primary);
    font-size: 1rem;
    line-height: 1;
}

.sg-carousel-actions button:hover {
    background: var(--sg-primary);
    color: #fff;
}

.sg-home [data-home-carousel] {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding: 1px 1px 8px;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.sg-home [data-home-carousel]::-webkit-scrollbar {
    display: none;
}

.sg-home [data-home-carousel] > * {
    flex: 0 0 calc((100% - 36px) / 4);
    scroll-snap-align: start;
}

.sg-home .sg-category-circles[data-home-carousel] > * {
    flex: 0 0 104px;
    min-width: 104px !important;
    max-width: 104px !important;
}

.sg-home :is(#tum-isletmeler, #populer-isletmeler, #cok-satan-menuler, #kampanyalar) {
    scroll-margin-top: 82px;
}

.sg-home .sg-store,
.sg-home .sg-store-card-top {
    background: #fff;
    border: 1px solid var(--sg-border);
    border-radius: 5px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
    color: inherit;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-height: 100%;
    overflow: hidden;
    text-decoration: none;
}

.sg-home .sg-store > img {
    aspect-ratio: 16 / 10;
    background: #eef2f7;
    display: block;
    height: auto;
    min-height: 0;
    object-fit: cover;
    width: 100%;
}

.sg-home .sg-card-media {
    aspect-ratio: 16 / 9;
    background: #eef2f7;
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.sg-home .sg-card-media img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.sg-card-rating,
.sg-card-ribbon {
    align-items: center;
    border-radius: 7px;
    display: inline-flex;
    font-size: .68rem;
    font-weight: 900;
    gap: 4px;
    min-height: 24px;
    padding: 4px 7px;
    position: absolute;
    z-index: 2;
}

.sg-card-rating {
    background: rgba(17, 24, 39, .88);
    color: #fff;
    right: 8px;
    top: 8px;
}

.sg-card-rating i {
    color: #facc15;
    font-size: .72rem;
}

.sg-card-ribbon {
    background: rgba(0, 168, 132, .94);
    color: #fff;
    left: 8px;
    top: 8px;
}

.sg-home .sg-store-body {
    display: grid;
    grid-template-rows: auto minmax(25px, auto) auto auto auto;
    gap: 3px;
    padding: 11px 5px 5px;
}

.sg-home .sg-store h3 {
    font-size: .88rem;
    line-height: 1.2;
    margin: 0;
}

.sg-home .sg-store p {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: var(--sg-muted);
    display: -webkit-box;
    font-size: .76rem;
    line-height: 1.32;
    margin: 0;
    min-height: 2.65em;
    overflow: hidden;
}

.sg-home .sg-meta {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 5px;
    margin: 0;
    min-width: 0;
    overflow: hidden;
}

.sg-home .sg-meta span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 1 auto;
    min-width: 0;
    border-radius: 6px;
    font-size: .66rem;
    min-height: 22px;
    padding: 3px 5px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-home .sg-meta span:first-child,
.sg-home .sg-meta span:has(.bi-clock) {
    flex: 0 0 auto;
    padding-inline: 5px;
}

.sg-home .sg-meta span:last-child {
    flex: 1 1 auto;
    justify-content: flex-start;
}

.sg-store-hours {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 24px;
    padding: 2px 3px;
    border: 1px solid rgba(22, 163, 74, .18);
    border-radius: 4px;
    background: #f0fdf4;
    color: #166534;
    font-size: .68rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

.sg-store-hours .bi {
    color: #16a34a;
    font-size: .75rem;
}

.sg-home .sg-store-card-top.is-closed .sg-card-media img {
    filter: grayscale(.28) brightness(.86);
}

.sg-home .sg-store-card-top.is-closed .sg-store-action {
    background: #475569;
    border-color: #475569;
    color: #fff;
}

.sg-home .sg-store-card-top.is-closed .sg-store-action:hover,
.sg-home .sg-store-card-top.is-closed .sg-store-action:focus {
    background: #334155;
    border-color: #334155;
    color: #fff;
}

.sg-store-hours.is-closed {
    border-color: rgba(248, 113, 113, .26);
    background: #fef2f2;
    color: #991b1b;
}

.sg-store-hours.is-closed .bi {
    color: #dc2626;
}

body.sg-theme-koyu .sg-store-hours.is-closed {
    border-color: rgba(248, 113, 113, .34);
    background: rgba(127, 29, 29, .32);
    color: #fecaca;
}

body.sg-theme-koyu .sg-store-hours.is-closed .bi {
    color: #fca5a5;
}

.sg-store-action {
    align-items: center;
    background: #0f766e;
    border: 1px solid #0f766e;
    border-radius: 7px;
    color: #fff !important;
    display: inline-flex;
    font-size: .72rem;
    font-style: normal;
    font-weight: 850;
    justify-content: center;
    min-height: 30px;
    padding: 6px 9px;
    text-shadow: none;
}

.sg-store-action:hover,
.sg-store-action:focus {
    background: #134e4a;
    border-color: #134e4a;
    color: #fff !important;
}

.sg-bestseller-card {
    background: #fff;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
    color: inherit;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    text-decoration: none;
}

.sg-bestseller-card img {
    aspect-ratio: 16 / 10;
    height: auto;
    object-fit: cover;
    width: 100%;
}

.sg-bestseller-card .sg-card-media img {
    aspect-ratio: auto;
    height: 100%;
}

.sg-bestseller-card .sg-card-media {
    aspect-ratio: 16 / 8.6;
}

.sg-bestseller-card > div {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 5px;
    padding: 9px;
}

.sg-bestseller-card h3 {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    font-size: .84rem;
    line-height: 1.2;
    margin: 0;
    min-height: 0;
    overflow: hidden;
}

.sg-bestseller-card p {
    overflow: hidden;
    color: var(--sg-muted);
    font-size: .7rem;
    line-height: 1.28;
    margin: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sg-bestseller-desc {
    display: -webkit-box !important;
    min-height: 0;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    white-space: normal !important;
    text-overflow: clip !important;
}

.sg-product-meta-row,
.sg-product-tags {
    display: flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    overflow: hidden;
}

.sg-product-meta-row span,
.sg-product-tags span {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    min-width: 0;
    min-height: 19px;
    padding: 3px 5px;
    border-radius: 6px;
    background: #f8fafc;
    color: #475467;
    font-size: .62rem;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.sg-product-meta-row span {
    flex: 0 1 auto;
}

.sg-product-meta-row i {
    color: #f59e0b;
    font-size: .66rem;
}

.sg-product-tags {
    flex-wrap: wrap;
    min-height: 0;
}

.sg-product-tags span {
    border: 1px solid #99f6e4;
    background: #f0fdfa;
    color: #134e4a;
}

.sg-product-tags i {
    font-size: .68rem;
}

.sg-product-discount {
    align-self: start;
    background: #dcfce7;
    border: 1px solid #bbf7d0;
    border-radius: 6px;
    color: #166534;
    display: inline-flex;
    font-size: .66rem;
    font-weight: 900;
    justify-self: start;
    padding: 3px 6px;
}

.sg-product-discount:empty {
    display: none;
}

.sg-home .sg-price {
    align-items: center;
    margin-top: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "old time"
        "new time";
    gap: 2px 8px;
    min-height: 30px;
}

.sg-home .sg-price strong {
    grid-area: new;
    color: var(--sg-text);
    font-size: .86rem;
    font-weight: 850;
    line-height: 1.1;
}

.sg-home .sg-price del,
.sg-home .sg-price small {
    color: var(--sg-muted);
    font-size: .68rem;
}

.sg-home .sg-price del {
    grid-area: old;
    align-self: end;
    font-style: italic;
    line-height: 1.1;
}

.sg-home .sg-price small {
    align-items: center;
    align-self: end;
    display: inline-flex;
    gap: 4px;
    grid-area: time;
    justify-self: end;
    min-height: 22px;
    padding: 3px 6px;
    border-radius: 6px;
    background: #f2f4f7;
    white-space: nowrap;
}

@media (max-width: 1199.98px) {
    .sg-home .sg-store-grid,
    .sg-home .sg-bestseller-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .sg-home .sg-home-block-title {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        align-items: center;
        gap: 5px;
        padding: 7px 8px;
        overflow: hidden;
    }

    .sg-home .sg-home-block-title > div:first-child {
        min-width: 0;
    }

    .sg-home .sg-home-block-title h2,
    .sg-home .sg-home-block-title span {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .sg-home .sg-home-block-title .sg-carousel-actions {
        justify-self: end;
        margin-left: 0;
    }

    .sg-home .sg-home-block-title > .btn {
        justify-self: end;
        width: auto;
        min-width: 31px;
        max-width: 88px;
        height: 31px;
        padding: 0 7px;
        overflow: hidden;
        border-radius: 7px;
        font-size: .64rem;
    }

    .sg-home .sg-home-block-title > .btn i {
        font-size: .9rem;
    }

    .sg-home .sg-home-block-title:not(:has(> .btn)) {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sg-home .sg-store-grid,
    .sg-home .sg-bestseller-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sg-home [data-home-carousel] > * {
        flex-basis: calc((100% - 10px) / 2);
    }

.sg-home .sg-category-circles[data-home-carousel] > * {
        flex: 0 0 84px;
        min-width: 84px;
        max-width: 84px !important;
    }

    .sg-carousel-actions button {
        width: 28px;
        height: 28px;
    }

    .sg-home .sg-store-body,
    .sg-bestseller-card > div {
        padding: 8px;
    }

    .sg-bestseller-card > div {
        gap: 4px;
        padding: 8px;
    }

    .sg-home .sg-store h3,
    .sg-bestseller-card h3 {
        font-size: .78rem;
    }

    .sg-home .sg-store p,
    .sg-bestseller-card p {
        font-size: .68rem;
    }

    .sg-home .sg-meta span,
    .sg-store-hours,
    .sg-home .sg-price del,
    .sg-home .sg-price small,
    .sg-product-discount,
    .sg-product-meta-row span,
    .sg-product-tags span {
        font-size: .62rem;
    }

    .sg-product-meta-row {
        gap: 3px;
    }

    .sg-product-meta-row span:nth-child(n+3) {
        display: none;
    }

    .sg-product-tags span {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .sg-bestseller-card .sg-card-media {
        aspect-ratio: 16 / 8.2;
    }

    .sg-bestseller-desc {
        -webkit-line-clamp: 1;
    }

    .sg-product-tags {
        min-height: 0;
    }

    .sg-product-tags span:not(:first-child) {
        display: none;
    }

    .sg-home .sg-meta {
        gap: 3px;
    }

    .sg-home .sg-meta span {
        min-height: 20px;
        padding-inline: 4px;
    }

    .sg-home .sg-price {
        gap: 2px 5px;
    }

    .sg-home .sg-price strong {
        font-size: .78rem;
    }

    .sg-store-action {
        font-size: .68rem;
        min-height: 28px;
    }
}
/* Home search polish: compact restaurant-style search pill. */
.sg-home .sg-home-search {
    width: min(100%, 760px) !important;
    min-height: 54px !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 12px !important;
    padding: 6px 7px 6px 16px !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .12) !important;
}

.sg-home .sg-home-search > .bi-search {
    width: 24px !important;
    height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #111827 !important;
    font-size: 1.05rem !important;
}

.sg-home .sg-home-search input {
    min-height: 40px !important;
    padding: 0 !important;
    border: 0 !important;
    color: #111827 !important;
    background: transparent !important;
    font-size: .92rem !important;
    font-weight: 650 !important;
}

.sg-home .sg-home-search input::placeholder {
    color: #9aa4b2 !important;
    font-weight: 500 !important;
    opacity: 1 !important;
}

.sg-home .sg-home-search button[type="submit"] {
    height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 72px !important;
    padding: 0 17px !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #172033 !important;
    background: #d6dcd7 !important;
    box-shadow: none !important;
    font-size: .76rem !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

.sg-start-order-modal {
    position: fixed;
    inset: 0;
    z-index: 1070;
    display: grid;
    place-items: center;
    padding: 16px;
}

.sg-start-order-modal[hidden] {
    display: none !important;
}

.sg-start-order-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(6px);
}

.sg-start-order-card {
    position: relative;
    z-index: 1;
    width: min(100%, 760px);
    max-height: calc(100vh - 32px);
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 10px;
    overflow-y: auto;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 12px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .1);
}

.sg-start-order-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.sg-start-order-head div {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.sg-start-order-head span {
    color: var(--sg-primary);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.sg-start-order-head strong {
    color: var(--sg-text);
    font-size: 1.05rem;
    line-height: 1.2;
}

.sg-start-order-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    padding: 3px;
    border-radius: 10px;
    background: #f2f4f7;
}

.sg-start-order-tabs button {
    min-height: 34px;
    border: 0;
    border-radius: 8px;
    color: #667085;
    background: transparent;
    font-size: .78rem;
    font-weight: 850;
}

.sg-start-order-tabs button.is-active {
    color: #fff;
    background: var(--sg-primary);
    box-shadow: 0 8px 18px rgba(0, 168, 132, .18);
}

.sg-start-order-input {
    min-height: 42px;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: #fff;
}

.sg-start-order-input i {
    color: var(--sg-primary);
}

.sg-start-order-input input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: var(--sg-text);
    background: transparent;
    font-size: .84rem;
    font-weight: 600;
}

.sg-start-order-input input::placeholder {
    color: #9aa4b2;
    font-weight: 500;
}

.sg-start-order-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.sg-start-order-actions .btn {
    min-height: 36px;
    border-radius: 9px;
    font-size: .76rem;
    font-weight: 850;
}

.sg-start-order-card > small {
    color: var(--sg-muted);
    font-size: .72rem;
    line-height: 1.3;
}

.sg-start-order-map {
    display: grid;
    gap: 3px;
    position: relative;
}

.sg-start-order-map[hidden] {
    display: none !important;
}

.sg-start-order-map > [data-start-map] {
    width: 100%;
    height: clamp(340px, 56vh, 520px);
    overflow: hidden;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: #eef2f7;
}

.sg-start-order-map:not([hidden]) > [data-start-map] {
    display: block !important;
    min-height: 360px;
}

.sg-map-error {
    display: grid;
    min-height: 320px;
    place-items: center;
    padding: 18px;
    color: #0f172a;
    background: #f8fafc;
    border-radius: 10px;
    text-align: center;
    font-size: .88rem;
    font-weight: 650;
}

.sg-start-order-map small {
    margin: 0;
    color: var(--sg-muted);
    font-size: .68rem;
    line-height: 1.15;
}

.sg-start-map-actions {
    position: absolute;
    top: 10px;
    right: 10px;
    left: 64px;
    z-index: 1200;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    width: auto;
    height: auto !important;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    pointer-events: none;
}

.sg-start-map-actions small {
    display: inline-flex;
    max-width: min(52%, 360px);
    min-height: 30px;
    align-items: center;
    padding: 5px 8px;
    border: 1px solid rgba(15, 118, 110, .2);
    border-radius: 8px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 8px 18px rgba(15, 23, 42, .12);
    color: #0f172a;
    pointer-events: none;
}

.sg-start-map-actions .btn {
    position: static;
    z-index: 1;
    max-width: min(100%, 280px);
    min-height: 34px;
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
    font-size: .72rem;
    font-weight: 850;
    white-space: nowrap;
    pointer-events: auto;
}

.sg-nearby-search-panel .sg-search {
    max-width: none !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 7px !important;
    margin-top: 8px !important;
    padding: 6px !important;
    border-radius: 999px !important;
    background: #fff !important;
}

.sg-nearby-search-panel .sg-search input {
    min-height: 40px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

.sg-nearby-search-panel .sg-search .btn {
    min-width: 74px !important;
    height: 40px !important;
    border-radius: 999px !important;
    font-size: .78rem !important;
    font-weight: 850 !important;
}

body.sg-theme-koyu .sg-home .sg-home-search,
body.sg-theme-koyu .sg-nearby-search-panel .sg-search {
    border-color: #263244 !important;
    background: #111827 !important;
    box-shadow: 0 16px 38px rgba(0, 0, 0, .28) !important;
}

body.sg-theme-koyu .sg-home .sg-home-search > .bi-search,
body.sg-theme-koyu .sg-home .sg-home-search input,
body.sg-theme-koyu .sg-nearby-search-panel .sg-search input {
    color: #f8fafc !important;
    background: transparent !important;
}

body.sg-theme-koyu .sg-home .sg-home-search button[type="submit"] {
    color: #fff !important;
    background: #0f766e !important;
}

body.sg-theme-koyu .sg-start-order-card,
body.sg-theme-koyu .sg-start-order-input {
    border-color: #263244;
    background: #111827;
}

body.sg-theme-koyu .sg-start-order-tabs {
    background: #1f2937;
}

body.sg-theme-koyu .sg-start-order-input input,
body.sg-theme-koyu .sg-start-order-card > small,
body.sg-theme-koyu .sg-start-order-map small,
body.sg-theme-koyu .sg-start-order-head strong {
    color: #f8fafc;
}

.sg-admin-check-list {
    grid-column: 1 / -1;
    align-self: start;
    display: block;
    margin: 0;
    padding: 10px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fff;
}

.sg-admin-check-list legend {
    width: auto;
    float: none;
    margin: 0 0 8px;
    padding: 0 6px;
    color: #0f172a;
    font-size: .86rem;
    font-weight: 700;
}

.sg-admin-check-options {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 6px;
    max-height: 210px;
    overflow-y: auto;
    padding: 6px;
    border: 1px solid #eef2f7;
    border-radius: 8px;
    background: #f8fafc;
    overscroll-behavior: contain;
}

.sg-admin-check-options label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: max-content;
    max-width: 100%;
    min-height: 30px;
    margin: 0;
    padding: 3px 5px 3px 3px;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.sg-admin-check-options input {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    accent-color: #15803d;
}

.sg-admin-check-options span {
    min-width: 0;
    color: #334155;
    font-size: .86rem;
    font-weight: 600;
    line-height: 1.25;
}

.sg-admin-check-options label:has(input:checked) {
    border-radius: 6px;
    background: #dcfce7;
}

.sg-admin-check-options label:has(input:checked) span {
    color: #14532d;
    font-weight: 700;
}

.sg-admin-check-list p {
    grid-column: 1 / -1;
    margin: 0;
    color: #64748b;
    font-size: .86rem;
}

body.sg-theme-koyu .sg-admin-check-list {
    border-color: #263244;
    background: #0f172a;
}

body.sg-theme-koyu .sg-admin-check-options label {
    background: transparent;
}

body.sg-theme-koyu .sg-admin-check-options label:has(input:checked) {
    background: rgba(34, 197, 94, .18);
}

body.sg-theme-koyu .sg-admin-check-list legend,
body.sg-theme-koyu .sg-admin-check-options span {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-admin-check-options {
    border-color: #263244;
    background: #0b1220;
}

@media (max-width: 575.98px) {
    .sg-admin-check-options {
        max-height: 190px;
    }
}

@media (max-width: 575.98px) {
    .sg-home .sg-home-search {
        min-height: 48px !important;
        grid-template-columns: 22px minmax(0, 1fr) 50px !important;
        gap: 6px !important;
        margin-top: 9px !important;
        padding: 4px 5px 4px 12px !important;
    }

    .sg-home .sg-home-search input {
        min-height: 38px !important;
        font-size: .82rem !important;
    }

    .sg-home .sg-home-search button[type="submit"] {
        width: 46px !important;
        min-width: 46px !important;
        height: 38px !important;
        padding: 0 !important;
        font-size: .72rem !important;
    }

    .sg-nearby-search-panel .sg-search {
        grid-template-columns: minmax(0, 1fr) 54px !important;
        padding: 5px !important;
    }

    .sg-start-order-card {
        padding: 8px;
        border-radius: 10px;
    }

    .sg-start-order-actions {
        grid-template-columns: minmax(0, 1fr);
    }

    .sg-start-order-map > [data-start-map] {
        height: clamp(320px, 54vh, 480px);
    }

    .sg-start-map-actions {
        align-items: center;
        flex-direction: row;
        left: 10px;
        top: 58px;
    }

    .sg-start-map-actions small {
        display: none;
    }

    .sg-start-map-actions .btn {
        max-width: calc(100vw - 36px);
        white-space: normal;
    }
}

/* Bestseller meta row final guard: price and prep time stay with rating/reviews. */
.sg-home .sg-bestseller-card > div {
    grid-template-rows: auto auto minmax(30px, auto) minmax(22px, auto) auto !important;
}

.sg-home .sg-product-meta-row {
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    width: 100% !important;
}

.sg-home .sg-product-meta-row span {
    flex: 0 0 auto !important;
}

.sg-home .sg-product-meta-row span:nth-child(n+5) {
    display: none !important;
}

.sg-home .sg-product-meta-price {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-left: auto !important;
    background: #f0fdfa !important;
    border: 1px solid #99f6e4 !important;
    color: var(--sg-text) !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

.sg-home .sg-product-meta-price del {
    color: #94a3b8 !important;
    font-size: .6rem !important;
    font-weight: 700 !important;
    font-style: italic !important;
    line-height: 1 !important;
    text-decoration: line-through !important;
}

.sg-home .sg-product-meta-price strong {
    color: var(--sg-text) !important;
    font-size: inherit !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

@media (max-width: 767.98px) {
    .sg-home .sg-bestseller-card > div {
        grid-template-rows: auto auto minmax(16px, auto) minmax(22px, auto) auto !important;
    }

    .sg-home .sg-product-meta-row span:nth-child(n+5) {
        display: none !important;
    }

    .sg-home .sg-product-meta-row {
        gap: 2px !important;
    }

    .sg-home .sg-product-meta-row span {
        display: inline-flex !important;
        font-size: .55rem !important;
        padding: 3px 4px !important;
    }

    .sg-home .sg-product-meta-price {
        display: inline-flex !important;
        font-size: .63rem !important;
        padding-inline: 4px !important;
    }

    .sg-home .sg-product-meta-price del {
        font-size: .54rem !important;
    }
}

/* Bestseller card alignment: every product card must finish on the same visual line. */
.sg-home [data-home-carousel] > .sg-bestseller-card,
.sg-home .sg-bestseller-card {
    box-sizing: border-box !important;
    grid-template-rows: 108px minmax(0, 1fr) !important;
    height: 276px !important;
    min-height: 276px !important;
    max-height: 276px !important;
}

.sg-home .sg-bestseller-card .sg-card-media {
    height: 108px !important;
    min-height: 108px !important;
    max-height: 108px !important;
}

.sg-home .sg-bestseller-card > div {
    position: relative !important;
    grid-template-rows: auto auto minmax(34px, 1fr) auto !important;
    padding: 8px !important;
}

.sg-home .sg-bestseller-card .sg-product-discount {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    z-index: 2 !important;
    max-width: calc(100% - 16px) !important;
}

.sg-home .sg-bestseller-card .sg-product-discount:empty {
    display: none !important;
}

.sg-home .sg-bestseller-desc {
    align-self: start !important;
    -webkit-line-clamp: 2 !important;
    line-height: 1.32 !important;
    min-height: 36px !important;
    max-height: 36px !important;
}

.sg-home .sg-bestseller-card .sg-product-meta-row {
    align-self: end !important;
}

@media (max-width: 767.98px) {
    .sg-home [data-home-carousel] > .sg-bestseller-card,
    .sg-home .sg-bestseller-card {
        grid-template-rows: 82px minmax(0, 1fr) !important;
        height: 236px !important;
        min-height: 236px !important;
        max-height: 236px !important;
    }

    .sg-home .sg-bestseller-card .sg-card-media {
        height: 82px !important;
        min-height: 82px !important;
        max-height: 82px !important;
    }

    .sg-home .sg-bestseller-card > div {
        grid-template-rows: auto auto minmax(19px, 1fr) auto !important;
        padding: 6px !important;
    }

    .sg-home .sg-bestseller-desc {
        -webkit-line-clamp: 1 !important;
        line-height: 1.35 !important;
        min-height: 18px !important;
        max-height: 18px !important;
    }
}

/* Bestseller cards: tighter final size, no decorative empty body space. */
.sg-home [data-home-carousel] > .sg-bestseller-card,
.sg-home .sg-bestseller-card {
    grid-template-rows: 94px minmax(0, 1fr) !important;
    height: 238px !important;
    min-height: 238px !important;
    max-height: 238px !important;
}

.sg-home .sg-bestseller-card .sg-card-media {
    height: 94px !important;
    min-height: 94px !important;
    max-height: 94px !important;
}

.sg-home .sg-bestseller-card > div {
    grid-template-rows: auto auto minmax(30px, auto) auto !important;
    gap: 3px !important;
    padding: 7px !important;
}

.sg-home .sg-bestseller-card h3 {
    font-size: .78rem !important;
    line-height: 1.12 !important;
}

.sg-home .sg-bestseller-store {
    font-size: .64rem !important;
}

.sg-home .sg-bestseller-desc {
    -webkit-line-clamp: 2 !important;
    font-size: .64rem !important;
    line-height: 1.28 !important;
    min-height: 31px !important;
    max-height: 31px !important;
}

@media (max-width: 767.98px) {
    .sg-home [data-home-carousel] > .sg-bestseller-card,
    .sg-home .sg-bestseller-card {
        grid-template-rows: 76px minmax(0, 1fr) !important;
        height: 216px !important;
        min-height: 216px !important;
        max-height: 216px !important;
    }

    .sg-home .sg-bestseller-card .sg-card-media {
        height: 76px !important;
        min-height: 76px !important;
        max-height: 76px !important;
    }

    .sg-home .sg-bestseller-card > div {
        grid-template-rows: auto auto minmax(17px, auto) auto !important;
        gap: 2px !important;
        padding: 6px !important;
    }

    .sg-home .sg-bestseller-desc {
        -webkit-line-clamp: 1 !important;
        min-height: 17px !important;
        max-height: 17px !important;
    }
}

/* Bestseller card inner spacing fix: keep content compact and readable. */
.sg-home .sg-bestseller-card > div {
    align-content: start !important;
    grid-template-rows: auto auto auto auto !important;
    gap: 2px !important;
    padding: 6px 7px !important;
}

.sg-home .sg-bestseller-card .sg-product-meta-row {
    align-self: start !important;
    margin-top: 4px !important;
}

.sg-home .sg-bestseller-desc {
    -webkit-line-clamp: 2 !important;
    font-size: .64rem !important;
    line-height: 1.38 !important;
    min-height: 36px !important;
    max-height: 36px !important;
}

.sg-home .sg-bestseller-store {
    line-height: 1.12 !important;
    margin-bottom: 2px !important;
}

@media (max-width: 767.98px) {
    .sg-home .sg-bestseller-card > div {
        gap: 2px !important;
        padding: 5px 6px !important;
    }

    .sg-home .sg-bestseller-card .sg-product-meta-row {
        margin-top: 3px !important;
    }

    .sg-home .sg-bestseller-desc {
        -webkit-line-clamp: 2 !important;
        font-size: .6rem !important;
        line-height: 1.28 !important;
        min-height: 31px !important;
        max-height: 31px !important;
    }
}

/* Final product card sizing: no hidden price, no artificial bottom gap. */
.sg-home .sg-bestseller-grid[data-home-carousel] {
    align-items: flex-start !important;
}

.sg-home [data-home-carousel] > .sg-bestseller-card,
.sg-home .sg-bestseller-card {
    grid-template-rows: 94px auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

.sg-home .sg-bestseller-card > div {
    display: grid !important;
    grid-template-rows: auto auto auto auto !important;
    align-content: start !important;
    gap: 2px !important;
    padding: 6px 7px 5px !important;
}

.sg-home .sg-product-meta-row {
    display: grid !important;
    grid-template-columns: auto auto auto minmax(max-content, 1fr) !important;
    align-items: center !important;
    column-gap: 3px !important;
    margin-top: 4px !important;
    min-height: 22px !important;
    overflow: visible !important;
}

.sg-home .sg-product-meta-row span {
    min-width: 0 !important;
    padding: 3px 4px !important;
    font-size: .58rem !important;
}

.sg-home .sg-product-meta-price {
    justify-self: end !important;
    margin-left: 0 !important;
    min-width: max-content !important;
    gap: 3px !important;
    padding-inline: 5px !important;
}

.sg-home .sg-product-meta-price del {
    font-size: .54rem !important;
}

.sg-home .sg-product-meta-price strong {
    font-size: .62rem !important;
}

@media (max-width: 991.98px) {
    .sg-home .sg-product-meta-row {
        grid-template-columns: auto auto minmax(max-content, 1fr) !important;
    }

    .sg-home .sg-product-meta-row span:nth-child(2) {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .sg-home [data-home-carousel] > .sg-bestseller-card,
    .sg-home .sg-bestseller-card {
        grid-template-rows: 76px auto !important;
    }

    .sg-home .sg-bestseller-card > div {
        padding-bottom: 5px !important;
    }

    .sg-home .sg-product-meta-row {
        margin-top: 3px !important;
        min-height: 21px !important;
    }
}

.sg-home-product-reviews {
    display: grid;
    gap: 8px;
    margin: 2px 0 4px;
    padding: 10px;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 10px;
    background: #f8fafc;
}

.sg-home-product-reviews > div:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.sg-home-product-reviews strong {
    font-size: .86rem;
    color: #0f172a;
}

.sg-home-product-reviews small {
    font-size: .72rem;
    color: #64748b;
}

.sg-home-product-review-list {
    display: grid;
    gap: 6px;
    max-height: 132px;
    overflow: auto;
    padding-right: 2px;
}

.sg-home-product-review {
    display: grid;
    gap: 4px;
    padding: 8px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .06);
}

.sg-home-product-review div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.sg-home-product-review strong {
    font-size: .76rem;
}

.sg-home-product-review span {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 5px;
    border-radius: 6px;
    background: #f0fdfa;
    color: #134e4a;
    font-size: .7rem;
    font-weight: 800;
}

.sg-home-product-review p,
.sg-home-product-review-empty {
    margin: 0;
    font-size: .76rem;
    line-height: 1.35;
    color: #475569;
}

body.sg-theme-koyu .sg-home-product-reviews {
    background: #111827;
    border-color: rgba(255,255,255,.1);
}

body.sg-theme-koyu .sg-home-product-review {
    background: #0f172a;
    border-color: rgba(255,255,255,.08);
}

body.sg-theme-koyu .sg-home-product-reviews strong,
body.sg-theme-koyu .sg-home-product-review strong {
    color: #f8fafc;
}

body.sg-theme-koyu .sg-home-product-reviews small,
body.sg-theme-koyu .sg-home-product-review p,
body.sg-theme-koyu .sg-home-product-review-empty {
    color: #cbd5e1;
}

/* Final app contrast guard: installed/PWA screens must stay readable on devices using dark mode. */
body.sg-theme-sistem {
    --sg-text: #172033;
    --sg-muted: #667085;
    --sg-border: #e7edf5;
    --sg-soft: #f7f9fc;
    --sg-page-bg: #f7f9fc;
    --sg-surface: #fff;
    --sg-surface-2: #f8fafc;
    color: var(--sg-text);
    background: var(--sg-page-bg);
}

body.sg-theme-sistem :is(.sg-page, .sg-section, .sg-panel, .sg-order-card, .sg-cart-item, .sg-address-box, .sg-store-detail, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-home-section, .sg-bestseller-card, .sg-store-card, .sg-category-card, .sg-auth-card, .sg-auth-panel, .sg-courier-money-grid > section, .sg-courier-location-card, .sg-courier-kpi-grid article, .sg-courier-live-main, .sg-courier-live-side, .sg-courier-next-action, .sg-courier-live-side article, .sg-courier-settings-card, .sg-courier-ready-card, .sg-courier-account-menu a, .sg-courier-profile-form, .sg-courier-logout-card) {
    color: var(--sg-text);
}

body.sg-theme-sistem :is(.sg-panel, .sg-order-card, .sg-cart-item, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-home-section, .sg-bestseller-card, .sg-store-card, .sg-category-card, .sg-auth-card, .sg-auth-panel, .sg-courier-money-grid > section, .sg-courier-live-main, .sg-courier-live-side, .sg-courier-next-action, .sg-courier-settings-card, .sg-courier-ready-card, .sg-courier-account-menu a, .sg-courier-profile-form, .sg-courier-logout-card) {
    border-color: var(--sg-border);
    background: var(--sg-surface);
}

body.sg-theme-sistem :is(.sg-courier-kpi-grid article, .sg-courier-location-card, .sg-courier-live-side article, .sg-courier-filter-tabs, .sg-courier-connection) {
    border-color: var(--sg-border);
    background: var(--sg-soft);
}

body.sg-theme-sistem :is(.sg-panel h1, .sg-panel h2, .sg-panel h3, .sg-panel strong, .sg-order-card h2, .sg-order-card strong, .sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span, .sg-bestseller-card h3, .sg-store-card h3, .sg-category-card strong, .sg-auth-card h1, .sg-auth-card h2, .sg-auth-panel h1, .sg-auth-panel h2, .sg-courier-kpi-grid strong, .sg-courier-money-grid strong, .sg-courier-location-card > strong, .sg-courier-location-card p b, .sg-courier-live-side strong, .sg-courier-next-action h2, .sg-courier-account-menu span) {
    color: var(--sg-text);
}

body.sg-theme-sistem :is(.sg-panel p, .sg-panel small, .sg-panel-title span, .sg-order-card p, .sg-order-card span, .sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small, .sg-bestseller-card p, .sg-store-card p, .sg-category-card span, .sg-auth-card p, .sg-auth-card small, .sg-auth-panel p, .sg-auth-panel small, .sg-courier-kpi-grid span, .sg-courier-kpi-grid small, .sg-courier-money-grid small, .sg-courier-location-card p, .sg-courier-location-card > div, .sg-courier-live-side span, .sg-courier-live-side small, .sg-courier-next-action p, .sg-courier-account-menu small) {
    color: var(--sg-muted);
}

body.sg-theme-sistem :is(.sg-courier-hero) {
    color: #fff;
}

body.sg-theme-sistem :is(.sg-courier-hero h1, .sg-courier-hero strong, .sg-courier-hero b) {
    color: #fff;
}

body.sg-theme-sistem :is(.sg-courier-hero p, .sg-courier-hero span, .sg-courier-hero small) {
    color: rgba(255, 255, 255, .78);
}

/* Final dark-theme guard: no light card/background should leak into apps or panels. */
body.sg-theme-koyu {
    --sg-text: #f8fafc;
    --sg-muted: #a7b0c0;
    --sg-border: #263244;
    --sg-soft: #111827;
    --sg-page-bg: #0b0f17;
    --sg-surface: #151c2a;
    --sg-surface-2: #1b2637;
    color: var(--sg-text);
    background: var(--sg-page-bg);
}

body.sg-theme-koyu :is(.sg-page, .sg-section, .sg-main-shell, .sg-panel, .sg-home-block, .sg-home-section, .sg-home-category-panel, .sg-nearby-shell, .sg-cart-main-panel, .sg-cart-side, .sg-cart-item, .sg-cart-store-strip, .sg-payment-step, .sg-payment-option, .sg-address-box, .sg-address-card, .sg-location-card, .sg-account-hero-card, .sg-account-item-card, .sg-account-stats article, .sg-account-menu a, .sg-settings-card, .sg-wallet-row, .sg-order-card, .sg-favorite-card, .sg-result-card, .sg-stat-hero, .sg-store, .sg-hero-store, .sg-store-card, .sg-category-card, .sg-bestseller-card, .sg-store-detail, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-auth-card, .sg-auth-panel, .sg-footer, .sg-visitor-prompt, .sg-modal-dialog, .sg-credit-dialog, .sg-admin-card, .sg-admin-panel, .sg-admin-list-tools, .sg-admin-detail-list article, .sg-panel-card, .sg-panel-table, .sg-business-panel-shell, .sg-business-hero, .sg-business-mini-stats article, .sg-business-order-watch, .sg-business-order-row, .sg-business-order-card, .sg-business-order-stats a, .sg-business-popup-summary div, .sg-business-popup-address, .sg-business-popup-items div, .sg-business-hours-grid article, .sg-business-hours-edit-row, .sg-courier-hero, .sg-courier-live-main, .sg-courier-live-side, .sg-courier-live-side article, .sg-courier-next-action, .sg-courier-money-grid > section, .sg-courier-location-card, .sg-courier-kpi-grid article, .sg-courier-settings-card, .sg-courier-ready-card, .sg-courier-account-menu a, .sg-courier-profile-form, .sg-courier-logout-card) {
    color: var(--sg-text) !important;
    border-color: var(--sg-border) !important;
    background: var(--sg-surface) !important;
}

body.sg-theme-koyu :is(.sg-soft, .sg-home-search, .sg-search, .sg-category-tabs, .sg-coupon-form, .sg-bar-row, .sg-distribution-list > div, .sg-stat-list a, .sg-setting-switch, .sg-business-order-search, .sg-business-bulk-form input[type="file"], .sg-business-store-switch select, .sg-admin-list-tools input, .sg-admin-list-tools select, .sg-courier-filter-tabs, .sg-courier-connection, .sg-courier-live-head, .sg-courier-live-side article, .sg-courier-location-card, .sg-courier-kpi-grid article) {
    color: var(--sg-text) !important;
    border-color: var(--sg-border) !important;
    background: var(--sg-surface-2) !important;
}

body.sg-theme-koyu :is(.sg-business-hero, .sg-courier-hero) {
    background: linear-gradient(135deg, #0f172a, #1f2937) !important;
}

body.sg-theme-koyu .sg-account-mobile-nav {
    color: var(--sg-text) !important;
    border-color: var(--sg-border) !important;
    background: rgba(11, 15, 23, .98) !important;
    box-shadow: 0 -10px 26px rgba(0, 0, 0, .42) !important;
}

body.sg-theme-koyu :is(.sg-account-mobile-nav a, .sg-account-mobile-nav button) {
    color: var(--sg-muted) !important;
    background: transparent !important;
}

body.sg-theme-koyu :is(.sg-account-mobile-nav a.is-active, .sg-account-mobile-nav a:hover, .sg-account-mobile-nav button:hover) {
    color: #fff !important;
    background: rgba(249, 115, 22, .18) !important;
}

body.sg-theme-koyu :is(.sg-panel-title span, .sg-panel p, .sg-panel small, .sg-store-body p, .sg-store-info p, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-order-card p, .sg-order-card span, .sg-account-menu small, .sg-business-order-main p, .sg-business-order-main span, .sg-business-mini-stats small, .sg-courier-live-side span, .sg-courier-live-side small, .sg-courier-next-action p, .sg-courier-location-card p, .sg-footer p, .sg-footer a, .sg-visitor-prompt p, .sg-visitor-prompt small) {
    color: var(--sg-muted) !important;
}

body.sg-theme-koyu :is(h1, h2, h3, h4, h5, h6, strong, label, dt, dd, .sg-panel-title h1, .sg-panel-title h2, .sg-store-body h3, .sg-store-info h1, .sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-order-card h2, .sg-account-menu span, .sg-business-order-main strong, .sg-business-mini-stats strong, .sg-courier-kpi-grid strong, .sg-courier-money-grid strong, .sg-courier-location-card > strong) {
    color: var(--sg-text) !important;
}

body.sg-theme-koyu :is(input, textarea, select, .form-control) {
    color: var(--sg-text) !important;
    border-color: #334155 !important;
    background: #0f172a !important;
}

body.sg-theme-koyu :is(input::placeholder, textarea::placeholder, .form-control::placeholder) {
    color: #7d8899 !important;
}

body.sg-theme-koyu :is(.badge, .sg-menu-badge, .sg-product-flag span, .sg-home-product-review span, .sg-business-order-row .sg-order-card-meta small, .sg-cart-badge) {
    color: #fff !important;
}

body.sg-theme-koyu :is(.sg-home-product-review span, .sg-menu-badge, .sg-product-flag span) {
    border-color: rgba(249, 115, 22, .4) !important;
    background: rgba(249, 115, 22, .18) !important;
}

body.sg-theme-koyu :is(.sg-empty-cart, .sg-minimum-warning) {
    color: #99f6e4 !important;
    border-color: rgba(251, 146, 60, .36) !important;
    background: rgba(124, 45, 18, .28) !important;
}

body.sg-theme-koyu :is(.sg-minimum-ok, .sg-result-card.is-success) {
    color: #dcfce7 !important;
    border-color: rgba(34, 197, 94, .38) !important;
    background: rgba(20, 83, 45, .32) !important;
}

/* Absolute last store-detail dark guard for installed mobile app. */
body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail,
body.sg-theme-koyu .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white) {
    background: #0b0f17 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div, .sg-menu-category-nav, .sg-menu-category-nav a, .sg-social-links a),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div, .sg-menu-category-nav, .sg-menu-category-nav a, .sg-social-links a) {
    background: #111827 !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(h1, h2, h3, h4, strong, b, dt, dd, summary, label, li, a),
body[data-customer-theme="koyu"] .sg-store-detail :is(h1, h2, h3, h4, strong, b, dt, dd, summary, label, li, a) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(p, small, em, del, .sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small),
body[data-customer-theme="koyu"] .sg-store-detail :is(p, small, em, del, .sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small) {
    color: #a7b0c0 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title {
    min-height: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(135deg, #111827, #172033) !important;
    border: 1px solid #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-badge-warning, .sg-badge-warning i),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-badge-warning, .sg-badge-warning i) {
    color: #9a3412 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-badge-success,
body[data-customer-theme="koyu"] .sg-store-detail .sg-badge-success {
    color: #166534 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-badge-info,
body[data-customer-theme="koyu"] .sg-store-detail .sg-badge-info {
    color: #075985 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-badge-money,
body[data-customer-theme="koyu"] .sg-store-detail .sg-badge-money {
    color: #9f1239 !important;
}

body.sg-theme-koyu .sg-store-detail :is(.btn-primary, .btn-primary *, .sg-icon-button-primary, .sg-icon-button-primary *),
body[data-customer-theme="koyu"] .sg-store-detail :is(.btn-primary, .btn-primary *, .sg-icon-button-primary, .sg-icon-button-primary *) {
    color: #fff !important;
}

/* PWA store detail real EOF contrast guard. */
body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail,
body.sg-theme-koyu .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white) {
    background: #0b0f17 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.container, .row, .col-lg-8, .col-lg-4),
body[data-customer-theme="koyu"] .sg-store-detail :is(.container, .row, .col-lg-8, .col-lg-4) {
    background: transparent !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div) {
    background-color: #111827 !important;
    background-image: none !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-menu-category-nav, .sg-menu-category-nav a),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-menu-category-nav, .sg-menu-category-nav a) {
    background: #0f172a !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-menu-category-title, .sg-menu-category-title *, .sg-panel-title h1, .sg-panel-title h2, .sg-panel-title h3, .sg-panel-title strong, .sg-panel-title span),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-menu-category-title, .sg-menu-category-title *, .sg-panel-title h1, .sg-panel-title h2, .sg-panel-title h3, .sg-panel-title strong, .sg-panel-title span) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail :is(p, small, em, del, .sg-menu-section summary small, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-contact-card dt),
body[data-customer-theme="koyu"] .sg-store-detail :is(p, small, em, del, .sg-menu-section summary small, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-contact-card dt) {
    color: #cbd5e1 !important;
}

@media (prefers-color-scheme: dark) {
    body.sg-theme-sistem .sg-store-detail,
    body.sg-theme-sistem .sg-store-detail :is(.sg-store-hero, .sg-section, .sg-section-white) {
        background: #0b0f17 !important;
        color: #f8fafc !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(.container, .row, .col-lg-8, .col-lg-4) {
        background: transparent !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(.sg-panel, .sg-store-shell, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div) {
        background-color: #111827 !important;
        background-image: none !important;
        border-color: #253044 !important;
        color: #f8fafc !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(.sg-menu-category-nav, .sg-menu-category-nav a) {
        background: #0f172a !important;
        border-color: #334155 !important;
        color: #f8fafc !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(.sg-panel-title, .sg-panel-title *, .sg-menu-category-title, .sg-menu-category-title *) {
        color: #f8fafc !important;
    }

    body.sg-theme-sistem .sg-store-detail :is(p, small, em, del, .sg-menu-section summary small, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-contact-card dt) {
        color: #cbd5e1 !important;
    }
}

/* Store detail must not show white bands inside the installed app dark surface. */
.sg-store-detail {
    --sg-store-dark-bg: #0b0f17;
    --sg-store-dark-card: #111827;
    --sg-store-dark-border: #253044;
    --sg-store-dark-text: #f8fafc;
    --sg-store-dark-muted: #cbd5e1;
}

body.sg-theme-koyu .sg-store-detail .sg-section-white {
    background-color: var(--sg-store-dark-bg) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title h2,
body.sg-theme-koyu .sg-store-detail .sg-panel-title span,
body.sg-theme-koyu .sg-store-detail .sg-menu-category-title strong {
    color: var(--sg-store-dark-text) !important;
    text-shadow: none !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel {
    background-color: var(--sg-store-dark-card) !important;
    border-color: var(--sg-store-dark-border) !important;
}

/* Store detail follows the selected customer theme. */
.sg-store-detail .sg-store-content-section {
    background: var(--sg-page-bg, #f7f9fc) !important;
    padding-block: clamp(12px, 3vw, 28px);
}

.sg-store-detail .sg-store-content-section > .container {
    background: transparent !important;
}

.sg-store-detail .sg-store-content-section .sg-panel {
    background: var(--sg-surface, #fff) !important;
    border: 1px solid var(--sg-border, #e7edf5) !important;
    color: var(--sg-text, #172033) !important;
}

@media (prefers-color-scheme: dark) {
    body.sg-theme-sistem .sg-store-detail .sg-section-white {
        background-color: var(--sg-store-dark-bg) !important;
    }

    body.sg-theme-sistem .sg-store-detail .sg-panel-title h2,
    body.sg-theme-sistem .sg-store-detail .sg-panel-title span,
    body.sg-theme-sistem .sg-store-detail .sg-menu-category-title strong {
        color: var(--sg-store-dark-text) !important;
        text-shadow: none !important;
    }

    body.sg-theme-sistem .sg-store-detail .sg-panel {
        background-color: var(--sg-store-dark-card) !important;
        border-color: var(--sg-store-dark-border) !important;
    }
}

.sg-store-detail .sg-store-content-section .sg-panel-title {
    min-height: auto !important;
    padding: 7px 10px !important;
    background: transparent !important;
    border: 0 !important;
    border-left: 3px solid #0f766e !important;
    border-radius: 0 !important;
    color: var(--sg-text, #172033) !important;
}

.sg-store-detail .sg-store-content-section .sg-panel-title span {
    display: block !important;
    width: auto !important;
    margin: 0 0 2px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--sg-muted, #64748b) !important;
    font-size: .76rem !important;
    font-weight: 450 !important;
    line-height: 1.25 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.sg-store-detail .sg-store-content-section .sg-panel-title h2 {
    display: block !important;
    margin: 0 !important;
    color: var(--sg-text, #172033) !important;
    font-size: .98rem !important;
    font-weight: 600 !important;
    line-height: 1.22 !important;
}

.sg-store-detail .sg-store-content-section :is(.sg-menu-category-nav, .sg-menu-category-nav a, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-hours-list div, .sg-social-links a) {
    background-color: var(--sg-surface, #fff) !important;
    border-color: var(--sg-border, #e7edf5) !important;
    color: var(--sg-text, #172033) !important;
}

.sg-store-detail .sg-store-content-section .sg-menu-category-nav {
    background: var(--sg-soft, #f7f9fc) !important;
    padding: 8px !important;
    border-radius: 12px !important;
}

.sg-store-detail .sg-store-content-section .sg-menu-category-nav a {
    background: var(--sg-surface, #fff) !important;
    color: var(--sg-text, #172033) !important;
}

.sg-store-detail .sg-store-content-section :is(.sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: var(--sg-text, #172033) !important;
}

.sg-store-detail .sg-store-content-section :is(.sg-menu-section summary small, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p) {
    color: var(--sg-muted, #667085) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section,
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section {
    background: #0b0f17 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section .sg-panel,
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section .sg-panel,
body.sg-theme-koyu .sg-store-detail .sg-store-content-section .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section .sg-panel-title {
    background: #111827 !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section .sg-panel-title {
    background: transparent !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 3px solid #2dd4bf !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section :is(.sg-menu-category-nav, .sg-menu-category-nav a, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-hours-list div, .sg-social-links a),
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section :is(.sg-menu-category-nav, .sg-menu-category-nav a, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-hours-list div, .sg-social-links a) {
    background-color: #111827 !important;
    border-color: #253044 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section .sg-menu-category-nav,
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section .sg-menu-category-nav {
    background: #0f172a !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section :is(.sg-panel-title h2, .sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span),
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section :is(.sg-panel-title h2, .sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: #f8fafc !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section :is(.sg-menu-section summary small, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p),
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section :is(.sg-menu-section summary small, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p) {
    color: #cbd5e1 !important;
}

.sg-badge-closed {
    background: #fee2e2;
    color: #991b1b;
    border-color: #fecaca;
}

.sg-store-closed-notice {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding: 9px 11px;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    background: #f0fdfa;
    color: #9a3412;
    font-size: .9rem;
    font-weight: 700;
}

body.sg-theme-koyu .sg-store-closed-notice,
body[data-customer-theme="koyu"] .sg-store-closed-notice {
    border-color: rgba(251, 146, 60, .4);
    background: rgba(124, 45, 18, .28);
    color: #99f6e4;
}

body.sg-theme-koyu .sg-badge-closed,
body[data-customer-theme="koyu"] .sg-badge-closed {
    background: rgba(127, 29, 29, .42);
    color: #fecaca;
    border-color: rgba(248, 113, 113, .35);
}

/* Typography discipline: normal data should not look like a heading. */
.sg-store-detail :is(.sg-menu-item p, .sg-contact-card dd, .sg-info-row-body p, .sg-info-row summary small, .sg-menu-section summary small) {
    font-weight: 400 !important;
}

.sg-store-detail :is(.sg-badge, .sg-menu-flags span, .sg-customizable-badge, .sg-menu-price span, .sg-contact-card dt, .sg-panel-title span, .sg-menu-category-nav a) {
    font-weight: 500 !important;
}

.sg-store-detail :is(.sg-menu-item h3, .sg-menu-category-title strong, .sg-menu-price strong, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    font-weight: 650 !important;
}

.sg-store-detail :is(.sg-store-info h1, .sg-panel-title h1, .sg-panel-title h2) {
    font-weight: 700 !important;
}

@media (max-width: 575.98px) {
    .sg-store-detail .sg-store-content-section {
        padding: 10px 8px 16px;
    }

    .sg-store-detail .sg-store-content-section .container {
        padding-inline: 0;
    }

    .sg-store-detail .sg-store-content-section .sg-panel {
        border-radius: 14px;
    }
}

/* Dark theme is disabled. Keep every customer-facing screen light even on devices with dark mode. */
body.sg-theme-acik,
body.sg-theme-acik :is(.sg-page, .sg-section, .sg-section-white, .sg-home, .sg-main-shell, .sg-panel, .sg-home-block, .sg-home-section, .sg-home-category-panel, .sg-nearby-shell, .sg-cart-main-panel, .sg-cart-side, .sg-cart-item, .sg-cart-store-strip, .sg-payment-step, .sg-payment-option, .sg-address-box, .sg-address-card, .sg-location-card, .sg-account-hero-card, .sg-account-item-card, .sg-account-stats article, .sg-account-menu a, .sg-settings-card, .sg-wallet-row, .sg-order-card, .sg-favorite-card, .sg-result-card, .sg-stat-hero, .sg-store, .sg-hero-store, .sg-store-card, .sg-category-card, .sg-bestseller-card, .sg-store-detail, .sg-store-shell, .sg-store-content-section, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card dl > div, .sg-hours-list div, .sg-menu-category-nav, .sg-menu-category-nav a, .sg-auth-card, .sg-auth-panel, .sg-footer, .sg-visitor-prompt, .sg-modal-dialog, .sg-credit-dialog) {
    background-color: var(--sg-surface, #fff) !important;
    color: var(--sg-text, #172033) !important;
}

body.sg-theme-acik :is(.sg-page, .sg-section, .sg-home, .sg-store-detail .sg-store-content-section) {
    background-color: var(--sg-page-bg, #f7f9fc) !important;
}

body.sg-theme-acik :is(.sg-home-search, .sg-search, .sg-category-tabs, .sg-menu-category-nav) {
    background-color: var(--sg-soft, #f7f9fc) !important;
}

body.sg-theme-acik :is(h1, h2, h3, h4, h5, h6, strong, b, label, dt, dd, summary, .sg-panel-title h1, .sg-panel-title h2, .sg-panel-title h3, .sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong) {
    color: var(--sg-text, #172033) !important;
}

body.sg-theme-acik .sg-store-detail :is(p, small, em, del, .sg-muted-text, .sg-store-info p, .sg-menu-section summary small, .sg-menu-item p, .sg-info-row summary small, .sg-info-row-body p, .sg-contact-card dt) {
    color: #526273 !important;
}

body.sg-theme-acik :is(.sg-panel-login-page, .sg-panel-page, .sg-admin-panel, .sg-admin-card, .sg-admin-module-card, .sg-admin-detail-list, .sg-panel-card, .sg-panel-table) :is(p, small, span, em, del, .sg-muted-text, .sg-panel-title span) {
    color: #475467 !important;
}

body.sg-theme-acik :is(.sg-panel-login-page, .sg-panel-page, .sg-admin-panel, .sg-admin-card, .sg-admin-module-card, .sg-admin-detail-list, .sg-panel-card, .sg-panel-table) :is(h1, h2, h3, h4, h5, h6, strong, b, label, summary) {
    color: #172033 !important;
}

/* Final visual polish: keep home header, section titles and footer in one clean brand palette. */
body.sg-theme-acik {
    --sg-brand-dark: #101828;
    --sg-brand-dark-2: #182230;
    --sg-brand-line: #e4e7ec;
    --sg-brand-soft: #f9fafb;
    --sg-brand-accent: #0f766e;
}

body.sg-theme-acik .sg-header,
body.sg-theme-acik:has(.sg-home) .sg-header,
body.sg-theme-acik:has(.sg-nearby-page) .sg-header {
    background: linear-gradient(180deg, var(--sg-brand-dark), var(--sg-brand-dark-2)) !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    box-shadow: 0 10px 28px rgba(16, 24, 40, .16) !important;
}

body.sg-theme-acik .sg-header :is(.navbar-brand, .navbar-brand strong, .navbar-brand:hover, .navbar-brand:focus) {
    color: #fff !important;
}

body.sg-theme-acik .sg-header .sg-logo {
    background: #fff !important;
    color: var(--sg-brand-dark) !important;
}

body.sg-theme-acik .sg-header :is(.sg-icon-button, .btn-outline-secondary) {
    background: rgba(255, 255, 255, .08) !important;
    border-color: rgba(255, 255, 255, .18) !important;
    color: #f8fafc !important;
}

body.sg-theme-acik .sg-header :is(.sg-icon-button, .btn-outline-secondary) :is(i, span) {
    color: #f8fafc !important;
}

body.sg-theme-acik .sg-header :is(.sg-icon-button:hover, .sg-icon-button:focus, .btn-outline-secondary:hover, .btn-outline-secondary:focus) {
    background: rgba(255, 255, 255, .15) !important;
    border-color: rgba(255, 255, 255, .30) !important;
    color: #fff !important;
}

body.sg-theme-acik :is(.btn-primary, .sg-header .btn-primary, .sg-floating-cart, .sg-cart-badge, .sg-carousel-actions button, .sg-product-modal-open) {
    background: var(--sg-brand-accent) !important;
    border-color: var(--sg-brand-accent) !important;
    color: #fff !important;
}

body.sg-theme-acik :is(.btn-primary, .sg-header .btn-primary, .sg-floating-cart, .sg-cart-badge, .sg-carousel-actions button, .sg-product-modal-open) :is(i, span, strong) {
    color: #fff !important;
}

body.sg-theme-acik :is(.btn-primary:hover, .btn-primary:focus, .sg-header .btn-primary:hover, .sg-floating-cart:hover, .sg-carousel-actions button:hover) {
    background: #ea6f0f !important;
    border-color: #ea6f0f !important;
    color: #fff !important;
}

body.sg-theme-acik :is(.sg-home-block-title, .sg-panel-title) {
    align-items: center;
    background: #fff !important;
    border: 1px solid var(--sg-brand-line) !important;
    border-left: 4px solid var(--sg-brand-accent) !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 24px rgba(16, 24, 40, .06) !important;
    color: var(--sg-brand-dark) !important;
}

body.sg-theme-acik :is(.sg-home-block-title, .sg-panel-title) :is(h1, h2, h3, strong) {
    color: var(--sg-brand-dark) !important;
}

body.sg-theme-acik :is(.sg-home-block-title, .sg-panel-title) > span,
body.sg-theme-acik :is(.sg-home-block-title, .sg-panel-title) div > span,
body.sg-theme-acik .sg-home-head span {
    background: transparent !important;
    color: var(--sg-brand-accent) !important;
    letter-spacing: .01em !important;
}

body.sg-theme-acik :is(.sg-home-block-title, .sg-panel-title) :is(p, small) {
    color: #667085 !important;
}

body.sg-theme-acik .sg-home-block-title > .btn,
body.sg-theme-acik .sg-home-block-title .btn,
body.sg-theme-acik .sg-panel-title .btn {
    background: #fff !important;
    border-color: #f2b57e !important;
    color: #b54708 !important;
}

body.sg-theme-acik .sg-home-block-title > .btn :is(i, span),
body.sg-theme-acik .sg-home-block-title .btn :is(i, span),
body.sg-theme-acik .sg-panel-title .btn :is(i, span) {
    color: #b54708 !important;
}

body.sg-theme-acik .sg-footer {
    background: linear-gradient(180deg, #101828, #0b1220) !important;
    border-top: 1px solid rgba(255, 255, 255, .08) !important;
    color: #e4e7ec !important;
}

body.sg-theme-acik .sg-footer :is(strong, b, span, .sg-footer-login-title) {
    color: #fff !important;
}

body.sg-theme-acik .sg-footer :is(p, small) {
    color: #cbd5e1 !important;
}

body.sg-theme-acik .sg-footer a {
    color: #d0d5dd !important;
}

body.sg-theme-acik .sg-footer a:hover,
body.sg-theme-acik .sg-footer a:focus {
    color: #fff !important;
}

body.sg-theme-acik .sg-footer :is(.sg-footer-social a, .sg-footer-login-icons a) {
    background: rgba(255, 255, 255, .08) !important;
    border-color: rgba(255, 255, 255, .16) !important;
    color: #fff !important;
}

body.sg-theme-acik .sg-footer :is(.sg-footer-social a, .sg-footer-login-icons a) :is(i, span, small, b) {
    color: #fff !important;
}

body.sg-theme-acik .sg-footer .sg-footer-apps a {
    background: rgba(255, 255, 255, .08) !important;
    border-color: rgba(255, 255, 255, .16) !important;
    color: #fff !important;
}

body.sg-theme-acik .sg-footer .sg-footer-apps a > i {
    background: rgba(255, 255, 255, .94) !important;
    color: #101828 !important;
}

body.sg-theme-acik .sg-footer .sg-footer-apps a span {
    color: #fff !important;
}

body.sg-theme-acik .sg-footer .sg-footer-apps a small {
    color: rgba(255, 255, 255, .92) !important;
}

body.sg-theme-acik .sg-footer .sg-footer-apps a b {
    color: #fff !important;
}

body.sg-theme-acik .sg-footer .sg-footer-apps a:hover {
    background: rgba(255, 255, 255, .14) !important;
    border-color: rgba(255, 255, 255, .30) !important;
}

body.sg-theme-acik .sg-footer :is(.sg-footer-social a:hover, .sg-footer-login-icons a:hover) {
    background: var(--sg-brand-accent) !important;
    border-color: var(--sg-brand-accent) !important;
}

body.sg-theme-acik .sg-footer-bottom {
    border-top-color: rgba(255, 255, 255, .10) !important;
    color: #cbd5e1 !important;
}

body.sg-theme-acik .sg-footer-credit {
    color: #fff !important;
    text-decoration-color: rgba(255, 255, 255, .45) !important;
}

/* Store detail and campaign cards: remove heavy dark strips and pale orange text. */
body.sg-theme-acik .sg-store-detail .sg-store-content-section .sg-panel-title,
body.sg-theme-acik .sg-store-detail .sg-panel-title {
    background: #fff !important;
    background-image: none !important;
    border: 1px solid #e4e7ec !important;
    border-left: 4px solid var(--sg-primary) !important;
    box-shadow: 0 8px 18px rgba(16, 24, 40, .05) !important;
    color: #101828 !important;
}

body.sg-theme-acik .sg-store-detail .sg-store-content-section .sg-panel-title span,
body.sg-theme-acik .sg-store-detail .sg-panel-title span,
body.sg-theme-acik .sg-store-detail .sg-menu-category-title span {
    background: #f2f4f7 !important;
    border: 1px solid #e4e7ec !important;
    color: #475467 !important;
}

body.sg-theme-acik .sg-store-detail .sg-store-content-section .sg-panel-title h2,
body.sg-theme-acik .sg-store-detail .sg-panel-title :is(h1, h2, h3, strong),
body.sg-theme-acik .sg-store-detail .sg-menu-category-title strong {
    color: #101828 !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav {
    background: #f9fafb !important;
    border: 1px solid #e4e7ec !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a {
    background: #fff !important;
    border-color: #d0d5dd !important;
    color: #344054 !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a:hover,
body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a:focus {
    background: #0f766e !important;
    border-color: #0f766e !important;
    color: #fff !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a:hover *,
body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a:focus * {
    color: #fff !important;
}

body.sg-theme-acik .sg-promo-slide {
    background: #fff !important;
    border: 1px solid #e4e7ec !important;
    box-shadow: 0 10px 22px rgba(16, 24, 40, .08) !important;
    color: #101828 !important;
}

body.sg-theme-acik .sg-promo-slide::before {
    background: linear-gradient(180deg, rgba(16, 24, 40, .06) 0%, rgba(16, 24, 40, .36) 100%) !important;
}

body.sg-theme-acik .sg-promo-slide > span {
    align-self: flex-start;
    background: rgba(255, 255, 255, .92) !important;
    border: 1px solid rgba(255, 255, 255, .7) !important;
    border-radius: 7px !important;
    color: #b54708 !important;
    padding: 4px 7px !important;
}

body.sg-theme-acik .sg-promo-slide strong {
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(16, 24, 40, .35) !important;
}

body.sg-theme-acik .sg-promo-slide small {
    color: rgba(255, 255, 255, .92) !important;
    text-shadow: 0 1px 2px rgba(16, 24, 40, .32) !important;
}

body.sg-theme-acik .sg-promo-slide em {
    background: #fff !important;
    border: 1px solid rgba(255, 255, 255, .75) !important;
    color: #b54708 !important;
    box-shadow: 0 8px 16px rgba(16, 24, 40, .16) !important;
}

/* Final contrast guard: keep every theme readable and stop pale orange/gray clashes. */
body.sg-theme-sistem {
    --sg-text: #172033;
    --sg-muted: #5b667a;
    --sg-border: #e1e7f0;
    --sg-soft: #f6f8fb;
    --sg-page-bg: #f6f8fb;
    --sg-surface: #ffffff;
    --sg-surface-2: #f8fafc;
}

body.sg-theme-acik :is(.sg-page, .sg-section),
body.sg-theme-sistem :is(.sg-page, .sg-section) {
    background: var(--sg-page-bg) !important;
    color: var(--sg-text) !important;
}

body.sg-theme-acik :is(.sg-panel, .sg-card, .sg-account-main, .sg-store-menu-card, .sg-info-card, .sg-cart-panel, .sg-settings-card, .sg-auth-card),
body.sg-theme-sistem :is(.sg-panel, .sg-card, .sg-account-main, .sg-store-menu-card, .sg-info-card, .sg-cart-panel, .sg-settings-card, .sg-auth-card) {
    background: var(--sg-surface) !important;
    border-color: var(--sg-border) !important;
    color: var(--sg-text) !important;
}

body.sg-theme-acik :is(.sg-panel-title, .sg-section-title, .sg-home-block-title),
body.sg-theme-sistem :is(.sg-panel-title, .sg-section-title, .sg-home-block-title) {
    background: linear-gradient(90deg, #ffffff, #f8fafc) !important;
    border: 1px solid var(--sg-border) !important;
    border-left: 4px solid var(--sg-primary) !important;
    border-radius: 10px !important;
    color: #111827 !important;
}

body.sg-theme-acik :is(.sg-panel-title span, .sg-section-title span, .sg-home-block-title span),
body.sg-theme-sistem :is(.sg-panel-title span, .sg-section-title span, .sg-home-block-title span) {
    background: #eef2f7 !important;
    color: #344054 !important;
    border-color: #d9e1ec !important;
}

body :is(.btn-primary, .sg-primary-button, .sg-action-primary, .sg-cart-button, .sg-auth-submit, button[type="submit"]) {
    color: #ffffff !important;
}

body :is(.btn-primary, .sg-primary-button, .sg-action-primary, .sg-cart-button, .sg-auth-submit, button[type="submit"]) :is(i, span, strong, small) {
    color: inherit !important;
}

body :is(.sg-badge, .sg-chip, .sg-pill, .sg-menu-meta span, .sg-store-badge) {
    color: #1f2937;
}

body.sg-theme-koyu :is(.sg-page, .sg-section, .sg-store-detail, .sg-store-content-section) {
    background: #0f172a !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-panel, .sg-card, .sg-account-main, .sg-store-menu-card, .sg-info-card, .sg-cart-panel, .sg-settings-card, .sg-auth-card, .sg-menu-category-card, .sg-menu-item) {
    background: #111827 !important;
    border-color: #263244 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(.sg-panel-title, .sg-section-title, .sg-home-block-title, .sg-menu-category-title) {
    background: linear-gradient(90deg, #111827, #172033) !important;
    border-color: #263244 !important;
    border-left-color: #14b8a6 !important;
    color: #ffffff !important;
}

body.sg-theme-koyu :is(.sg-panel-title span, .sg-section-title span, .sg-home-block-title span, .sg-menu-category-title span) {
    background: rgba(251, 146, 60, .18) !important;
    border-color: rgba(251, 146, 60, .32) !important;
    color: #99f6e4 !important;
}

body.sg-theme-koyu :is(h1, h2, h3, h4, h5, h6, strong, label, .sg-menu-item-title, .sg-info-row-body b) {
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(p, small, .sg-muted-text, .sg-menu-item-desc, .sg-info-row-body span) {
    color: #cbd5e1 !important;
}

body.sg-theme-koyu :is(input, select, textarea, .form-control) {
    background: #0b1220 !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

body.sg-theme-koyu :is(input, textarea)::placeholder {
    color: #94a3b8 !important;
}

@media (max-width: 767.98px) {
    .sg-mobile-welcome {
        display: block !important;
        position: relative !important;
        overflow: hidden !important;
        padding: 11px 12px !important;
        border: 1px solid rgba(255, 255, 255, .34) !important;
        border-radius: 10px !important;
        background:
            linear-gradient(135deg, rgba(255, 247, 237, .96) 0%, rgba(240, 253, 244, .88) 56%, rgba(239, 246, 255, .92) 100%) !important;
        box-shadow: 0 10px 22px rgba(16, 24, 40, .10) !important;
    }

    .sg-mobile-welcome h1 {
        color: #172033 !important;
    }

    .sg-mobile-welcome h1 > span {
        color: #9a3412 !important;
        font-weight: 600 !important;
    }

    .sg-mobile-welcome h1 > strong {
        background: rgba(255, 255, 255, .86) !important;
        color: #172033 !important;
        box-shadow: none !important;
    }

    .sg-mobile-status-grid a {
        border-color: #d8e0ea !important;
        background: rgba(255, 255, 255, .82) !important;
        color: #172033 !important;
        font-weight: 600 !important;
    }

    .sg-mobile-status-grid a i {
        color: #134e4a !important;
    }
}

/* Final readability guard for home campaign overlays and product rating chips. */
.sg-home .sg-product-meta-row span,
.sg-home .sg-product-tags span {
    border: 1px solid #e4e7ec !important;
    background: #fff !important;
    color: #172033 !important;
    font-size: .64rem !important;
    font-weight: 600 !important;
    box-shadow: 0 2px 7px rgba(16, 24, 40, .06) !important;
}

.sg-home .sg-product-meta-row span :is(i, b, strong),
.sg-home .sg-product-tags span :is(i, b, strong) {
    color: inherit !important;
}

.sg-home .sg-product-meta-row span .bi-star-fill,
.sg-home .sg-card-rating .bi-star-fill {
    color: #f59e0b !important;
}

.sg-home .sg-card-rating {
    border: 1px solid rgba(255, 255, 255, .78) !important;
    background: rgba(239, 239, 239, 0.92) !important;
    color: #172033 !important;
    font-weight: 650 !important;
    text-shadow: none !important;
}

.sg-home .sg-promo-slide::before,
body.sg-theme-acik .sg-promo-slide::before {
    background: linear-gradient(180deg, rgba(15, 23, 42, .24) 0%, rgba(15, 23, 42, .70) 56%, rgba(15, 23, 42, .90) 100%) !important;
}

.sg-home .sg-promo-slide > span,
body.sg-theme-acik .sg-promo-slide > span {
    align-self: flex-start !important;
    width: max-content !important;
    max-width: calc(100% - 16px) !important;
    padding: 5px 8px !important;
    border-radius: 7px !important;
    background: rgba(15, 118, 110, .96) !important;
    border: 1px solid rgba(255, 255, 255, .72) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: .68rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-shadow: none !important;
}

.sg-home .sg-promo-slide strong,
.sg-home .sg-promo-slide small,
body.sg-theme-acik .sg-promo-slide strong,
body.sg-theme-acik .sg-promo-slide small {
    display: block !important;
    max-width: min(92%, 360px) !important;
    width: fit-content !important;
    border-radius: 7px !important;
    background: rgba(15, 23, 42, .76) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-shadow: none !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.sg-home .sg-promo-slide strong,
body.sg-theme-acik .sg-promo-slide strong {
    padding: 5px 7px !important;
    font-weight: 700 !important;
}

.sg-home .sg-promo-slide small,
body.sg-theme-acik .sg-promo-slide small {
    padding: 4px 7px !important;
    color: rgba(255, 255, 255, .94) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .94) !important;
    font-weight: 400 !important;
}

.sg-home .sg-promo-slide em,
body.sg-theme-acik .sg-promo-slide em {
    background: #fff !important;
    border: 1px solid rgba(153, 246, 228, .92) !important;
    color: #134e4a !important;
    -webkit-text-fill-color: #134e4a !important;
    font-weight: 650 !important;
    text-shadow: none !important;
}

.sg-home .sg-store-action {
    background: #0f766e !important;
    border: 1px solid #0f766e !important;
    color: #ffffff !important;
}

.sg-home .sg-store-action:hover,
.sg-home .sg-store-action:focus {
    background: #0d9488 !important;
    border-color: #0d9488 !important;
    color: #ffffff !important;
}

.sg-home .sg-card-price-badge {
    position: absolute;
    top: 8px;
    right: 3px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    max-width: calc(100% - 72px);
    min-height: 20px;
    padding: 3px 6px;
    border: 1px solid rgba(255, 255, 255, .82);
    border-radius: 7px;
    background: rgba(255, 255, 255, .94);
    color: #172033;
    box-shadow: 0 8px 18px rgba(16, 24, 40, .16);
    line-height: 1;
    white-space: nowrap;
}

.sg-home .sg-card-price-badge del {
    color: #667085;
    font-size: .58rem;
    font-style: italic;
}

.sg-home .sg-card-price-badge strong {
    color: #101828;
    font-size: .67rem;
    font-weight: 650;
}

@media (max-width: 767.98px) {
    .sg-home .sg-card-price-badge {
        top: 6px;
        right: 3px;
        max-width: calc(100% - 58px);
        min-height: 20px;
        padding: 3px 5px;
    }

    .sg-home .sg-card-price-badge del {
        font-size: .52rem;
    }

.sg-home .sg-card-price-badge strong {
    font-size: .67rem;
    font-weight: 650;
}
}

/* Store action contrast guard: orange buttons always use white text/icons. */
.sg-store-action,
.sg-store-action :is(i, span, strong, small),
.sg-store-action:hover,
.sg-store-action:focus,
.sg-store-action:hover :is(i, span, strong, small),
.sg-store-action:focus :is(i, span, strong, small) {
    color: #fff !important;
}

.sg-home .sg-store-action,
.sg-home .sg-store-action :is(i, span, strong, small) {
    color: #ffffff !important;
}

.sg-home .sg-store-action:hover,
.sg-home .sg-store-action:focus,
.sg-home .sg-store-action:hover :is(i, span, strong, small),
.sg-home .sg-store-action:focus :is(i, span, strong, small),
.sg-home .sg-store-card-top.is-closed .sg-store-action,
.sg-home .sg-store-card-top.is-closed .sg-store-action :is(i, span, strong, small) {
    color: #fff !important;
}

/* S?ylegetirsin soft turquoise palette: one readable color language across the site. */
:root,
body.sg-theme-acik {
    --sg-primary: #0f766e;
    --sg-primary-hover: #0d9488;
    --sg-primary-dark: #134e4a;
    --sg-primary-soft: #ccfbf1;
    --sg-primary-wash: #f0fdfa;
    --sg-text: #12312f;
    --sg-muted: #5e746f;
    --sg-border: #cfe8e4;
    --sg-soft: #f0fdfa;
    --sg-page-bg: #f5fbfa;
    --sg-surface: #ffffff;
    --sg-surface-2: #ecfdf5;
    --sg-brand-accent: #0f766e;
}

body,
.sg-page,
.sg-section,
.sg-home,
.sg-store-detail,
.sg-cart-page,
.sg-account-page {
    --sg-primary: #0f766e !important;
    --sg-primary-hover: #0d9488 !important;
    --sg-primary-dark: #134e4a !important;
    --sg-primary-soft: #ccfbf1 !important;
    --sg-primary-wash: #f0fdfa !important;
    --sg-text: #12312f !important;
    --sg-muted: #5e746f !important;
    --sg-border: #cfe8e4 !important;
    --sg-soft: #f0fdfa !important;
    --sg-page-bg: #f5fbfa !important;
    --sg-surface: #ffffff !important;
    --sg-surface-2: #ecfdf5 !important;
}

body.sg-theme-acik,
body:not(.sg-theme-koyu) {
    background: #f5fbfa !important;
    color: #12312f !important;
}

body:not(.sg-theme-koyu) :is(.sg-page, .sg-section) {
    background: #f5fbfa !important;
}

body:not(.sg-theme-koyu) :is(.sg-panel, .sg-card, .sg-store-card, .sg-bestseller-card, .sg-menu-section, .sg-menu-item, .sg-contact-card, .sg-info-row, .sg-cart-panel, .sg-account-card, .sg-settings-card, .sg-auth-card) {
    border-color: #cfe8e4 !important;
    background: #ffffff !important;
    color: #12312f !important;
}

body:not(.sg-theme-koyu) :is(.sg-panel-title, .sg-section-title, .sg-home-block-title, .sg-menu-category-title) {
    border-color: #b7ddd7 !important;
    border-left-color: #0f766e !important;
    background: linear-gradient(90deg, #e6fffb 0%, #ffffff 100%) !important;
    color: #12312f !important;
}

body:not(.sg-theme-koyu) :is(.sg-panel-title span, .sg-section-title span, .sg-home-block-title span, .sg-menu-category-title span) {
    border-color: #99f6e4 !important;
    background: #099c7c !important;
    color: #134e4a !important;
}

body:not(.sg-theme-koyu) :is(.btn-primary, .sg-primary-button, .sg-action-primary, .sg-auth-submit, .sg-floating-cart, .sg-cart-badge, .sg-product-modal-open, .sg-icon-button-primary, button[type="submit"]) {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) :is(.btn-primary, .sg-primary-button, .sg-action-primary, .sg-auth-submit, .sg-floating-cart, .sg-cart-badge, .sg-product-modal-open, .sg-icon-button-primary, button[type="submit"]) :is(i, span, strong, small) {
    color: #f5070d !important;
}

body:not(.sg-theme-koyu) :is(.btn-primary:hover, .btn-primary:focus, .sg-primary-button:hover, .sg-action-primary:hover, .sg-auth-submit:hover, .sg-floating-cart:hover, .sg-product-modal-open:hover, .sg-icon-button-primary:hover, button[type="submit"]:hover) {
    border-color: #0d9488 !important;
    background: #0d9488 !important;
    color: #ffffff !important;
}

body.sg-theme-acik :is(.btn-primary, .sg-header .btn-primary, .sg-floating-cart, .sg-cart-badge, .sg-carousel-actions button, .sg-product-modal-open) {
    border-color: #f97316 !important;
    background: #f97316 !important;
    color: #ffffff !important;
}

body.sg-theme-acik :is(.btn-primary, .sg-header .btn-primary, .sg-floating-cart, .sg-cart-badge, .sg-carousel-actions button, .sg-product-modal-open) :is(i, span, strong, small) {
    color: #ffffff !important;
}

body.sg-theme-acik :is(.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .sg-header .btn-primary:hover, .sg-header .btn-primary:focus, .sg-floating-cart:hover, .sg-floating-cart:focus, .sg-carousel-actions button:hover, .sg-carousel-actions button:focus, .sg-product-modal-open:hover, .sg-product-modal-open:focus) {
    border-color: #ea580c !important;
    background: #ea580c !important;
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) :is(.sg-badge, .sg-chip, .sg-pill, .sg-menu-meta span, .sg-store-badge, .sg-product-meta-row span, .sg-product-tags span) {
    border-color: #b7ddd7 !important;
    background: #ecfdf5 !important;
    color: #134e4a !important;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-active-toggle-button.sg-toggle-disable-action,
body:not(.sg-theme-koyu) .sg-admin-inline-form .sg-active-toggle-button.sg-toggle-disable-action {
    border-color: #16a34a !important;
    background: #16a34a !important;
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-active-toggle-button.sg-toggle-disable-action:hover,
body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-active-toggle-button.sg-toggle-disable-action:focus,
body:not(.sg-theme-koyu) .sg-admin-inline-form .sg-active-toggle-button.sg-toggle-disable-action:hover,
body:not(.sg-theme-koyu) .sg-admin-inline-form .sg-active-toggle-button.sg-toggle-disable-action:focus {
    border-color: #15803d !important;
    background: #15803d !important;
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-active-toggle-button.sg-toggle-enable-action,
body:not(.sg-theme-koyu) .sg-admin-inline-form .sg-active-toggle-button.sg-toggle-enable-action {
    border-color: #cbd5e1 !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-active-toggle-button.sg-toggle-enable-action:hover,
body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-active-toggle-button.sg-toggle-enable-action:focus,
body:not(.sg-theme-koyu) .sg-admin-inline-form .sg-active-toggle-button.sg-toggle-enable-action:hover,
body:not(.sg-theme-koyu) .sg-admin-inline-form .sg-active-toggle-button.sg-toggle-enable-action:focus {
    border-color: #94a3b8 !important;
    background: #e2e8f0 !important;
    color: #475569 !important;
}

body:not(.sg-theme-koyu) .sg-active-toggle-button.sg-toggle-disable-action i {
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) .sg-active-toggle-button.sg-toggle-enable-action i {
    color: #64748b !important;
}

.sg-courier-pending-note {
    align-items: center;
    background: #fffbeb;
    border: 1px solid #f59e0b;
    border-radius: 7px;
    color: #92400e;
    display: inline-flex;
    font-size: .75rem;
    font-weight: 800;
    gap: 6px;
    min-height: 30px;
    padding: 5px 8px;
}

.sg-courier-pending-note i {
    color: #b45309;
}

.sg-admin-courier-form.is-disabled {
    background: #f8fafc;
    border-color: #cbd5e1;
    opacity: .72;
}

.sg-admin-courier-form.is-disabled :is(select, button) {
    cursor: not-allowed;
}

.sg-courier-ready-warning {
    align-items: center;
    color: #92400e;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 800;
    gap: 5px;
}

.sg-courier-reject-inline {
    margin: 0;
}

.sg-courier-reject-box {
    display: none;
}

@media (max-width: 640px) {
    .sg-application-detail-grid {
        grid-template-columns: 1fr;
    }
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-icon-button-info {
    background: #eff6ff;
    border-color: #93c5fd;
    color: #1d4ed8;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-icon-button-success {
    background: #dcfce7;
    border-color: #86efac;
    color: #15803d;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-icon-button-warning {
    background: #fffbeb;
    border-color: #fde68a;
    color: #a16207;
}

body:not(.sg-theme-koyu) .sg-admin-row-actions .sg-icon-button-danger {
    background: #fff1f2;
    border-color: #fecdd3;
    color: #be123c;
}

body:not(.sg-theme-koyu) :is(.sg-badge-warning, .sg-card-rating) {
    border-color: #fde68a !important;
    background: #fffbeb !important;
    color: #92400e !important;
}

body:not(.sg-theme-koyu) :is(.sg-badge-success, .sg-badge-info) {
    border-color: #99f6e4 !important;
    background: #ccfbf1 !important;
    color: #134e4a !important;
}

body:not(.sg-theme-koyu) :is(.sg-badge-money, .sg-customizable-badge, .sg-card-price-badge) {
    border-color: #99f6e4 !important;
    background: #f0fdfa !important;
    color: #134e4a !important;
}

body:not(.sg-theme-koyu) :is(input, select, textarea, .form-control) {
    border-color: #cfe8e4 !important;
    background: #ffffff !important;
    color: #12312f !important;
}

body:not(.sg-theme-koyu) .form-check-input {
    --bs-form-check-bg: #ffffff;
    background-color: var(--bs-form-check-bg) !important;
    border-color: #94a3b8 !important;
}

body:not(.sg-theme-koyu) .form-check-input:checked {
    --bs-form-check-bg: #0f766e;
    background-color: #0f766e !important;
    border-color: #0f766e !important;
    background-image: var(--bs-form-check-bg-image) !important;
}

body:not(.sg-theme-koyu) :is(.sg-panel-page, .sg-business-panel-bootstrap, .sg-admin-panel-bootstrap, .sg-courier-panel-bootstrap) .form-check-input[type="checkbox"]:checked {
    --bs-form-check-bg: #0f766e;
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
    background-color: #0f766e !important;
    border-color: #0f766e !important;
    background-image: var(--bs-form-check-bg-image) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 12px 12px !important;
}

body:not(.sg-theme-koyu) :is(input, textarea)::placeholder {
    color: #8aa19c !important;
}

.sg-home .sg-mobile-welcome,
.sg-home .sg-home-copy {
    background: linear-gradient(135deg, #e6fffb 0%, #f0fdfa 48%, #ffffff 100%) !important;
    border-color: #b7ddd7 !important;
}

.sg-home .sg-mobile-status-grid a,
.sg-home .sg-home-search,
.sg-home .sg-home-search input {
    border-color: #b7ddd7 !important;
    background: rgba(255, 255, 255, .92) !important;
    color: #12312f !important;
}

.sg-home .sg-mobile-status-grid a i,
.sg-home .sg-home-search i {
    color: #0f766e !important;
}

.sg-home .sg-home-search button[type="submit"] {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
}

.sg-home .sg-promo-slide > span,
body.sg-theme-acik .sg-promo-slide > span {
    border-color: rgba(255, 255, 255, .72) !important;
    background: rgba(15, 118, 110, .96) !important;
    color: #ffffff !important;
}

.sg-home .sg-promo-slide em,
body.sg-theme-acik .sg-promo-slide em {
    border-color: rgba(153, 246, 228, .92) !important;
    background: #ecfdf5 !important;
    color: #134e4a !important;
    -webkit-text-fill-color: #134e4a !important;
}

.sg-home .sg-store-action {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
}

.sg-home .sg-store-action :is(i, span, strong, small) {
    color: #ffffff !important;
}

.sg-home .sg-store-action:hover,
.sg-home .sg-store-action:focus {
    border-color: #0d9488 !important;
    background: #0d9488 !important;
    color: #ffffff !important;
}

.sg-home .sg-store-action:hover :is(i, span, strong, small),
.sg-home .sg-store-action:focus :is(i, span, strong, small) {
    color: #ffffff !important;
}

.sg-store-action:not(.sg-home .sg-store-action) {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
}

.sg-store-action:not(.sg-home .sg-store-action) :is(i, span, strong, small) {
    color: #ffffff !important;
}

.sg-home .sg-carousel-actions button {
    border-color: #99f6e4 !important;
    background: #ecfdf5 !important;
    color: #0f766e !important;
}

.sg-home .sg-carousel-actions button:hover {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
}

body:not(.sg-theme-koyu) a {
    color: #0f766e;
}

/* Store detail panel subtitles should read like helper text, not section headlines. */
.sg-store-detail .sg-store-content-section .sg-panel-title p {
    margin: 2px 0 0 !important;
    color: #5e746f !important;
    font-size: .82rem !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-store-content-section .sg-panel-title p,
body[data-customer-theme="koyu"] .sg-store-detail .sg-store-content-section .sg-panel-title p {
    color: #cbd5e1 !important;
    font-weight: 400 !important;
}

/* Login inputs: icons must be visible without harsh gray. */
.sg-auth-input > i,
.sg-panel-login-form .sg-auth-input > i,
.sg-login-clean .sg-auth-input > i,
.sg-register-form .sg-auth-input > i,
.sg-work-apply-form .sg-auth-input > i {
    color: #0f766e !important;
    opacity: .92 !important;
}

.sg-auth-input:focus-within > i,
.sg-panel-login-form .sg-auth-input:focus-within > i,
.sg-login-clean .sg-auth-input:focus-within > i,
.sg-register-form .sg-auth-input:focus-within > i,
.sg-work-apply-form .sg-auth-input:focus-within > i {
    color: #0d9488 !important;
    opacity: 1 !important;
}

.sg-auth-input .form-control,
.sg-auth-input input,
.sg-panel-login-form .form-control {
    border-color: #cfe8e4 !important;
    background: #ffffff !important;
    color: #12312f !important;
}

.sg-auth-input .form-control:focus,
.sg-auth-input input:focus,
.sg-panel-login-form .form-control:focus {
    border-color: #0d9488 !important;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, .14) !important;
}

/* Final store action contrast: no pale button, no invisible text. */
.sg-home a.sg-store-action,
.sg-home button.sg-store-action,
.sg-home .sg-store-action,
.sg-home .sg-store-card-top .sg-store-action,
body.sg-theme-acik .sg-home .sg-store-card-top .sg-store-action,
body:not(.sg-theme-koyu) .sg-home .sg-store-card-top .sg-store-action {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

.sg-home a.sg-store-action :is(i, span, strong, small),
.sg-home button.sg-store-action :is(i, span, strong, small),
.sg-home .sg-store-action :is(i, span, strong, small),
.sg-home .sg-store-card-top .sg-store-action :is(i, span, strong, small),
body.sg-theme-acik .sg-home .sg-store-card-top .sg-store-action :is(i, span, strong, small),
body:not(.sg-theme-koyu) .sg-home .sg-store-card-top .sg-store-action :is(i, span, strong, small) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

.sg-home a.sg-store-action:hover,
.sg-home a.sg-store-action:focus,
.sg-home button.sg-store-action:hover,
.sg-home button.sg-store-action:focus,
.sg-home .sg-store-action:hover,
.sg-home .sg-store-action:focus,
.sg-home .sg-store-card-top .sg-store-action:hover,
.sg-home .sg-store-card-top .sg-store-action:focus,
body.sg-theme-acik .sg-home .sg-store-card-top .sg-store-action:hover,
body.sg-theme-acik .sg-home .sg-store-card-top .sg-store-action:focus,
body:not(.sg-theme-koyu) .sg-home .sg-store-card-top .sg-store-action:hover,
body:not(.sg-theme-koyu) .sg-home .sg-store-card-top .sg-store-action:focus {
    border-color: #0d9488 !important;
    background: #0d9488 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Homepage vibrant marketplace layer: lively colors with explicit contrast. */
.sg-home {
    --sg-vivid-teal: #00a884;
    --sg-vivid-teal-dark: #067a68;
    --sg-vivid-coral: #ff4d6d;
    --sg-vivid-amber: #ffc233;
    --sg-vivid-purple: #7c3aed;
    --sg-vivid-blue: #2563eb;
    --sg-vivid-ink: #102a2a;
    background:
        radial-gradient(circle at 8% 0%, rgba(0, 168, 132, .18) 0, transparent 28%),
        radial-gradient(circle at 92% 9%, rgba(255, 77, 109, .16) 0, transparent 28%),
        linear-gradient(180deg, #f4fffb 0%, #ffffff 48%, #f7fbff 100%) !important;
}

.sg-home .sg-main-shell {
    border-color: rgba(0, 168, 132, .22) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 255, 255, .94)),
        radial-gradient(circle at 0 0, rgba(255, 194, 51, .18), transparent 34%) !important;
    box-shadow: 0 18px 40px rgba(15, 23, 42, .08) !important;
}

.sg-home .sg-mobile-welcome,
.sg-home .sg-home-copy {
    border-color: rgba(0, 168, 132, .30) !important;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 194, 51, .30), transparent 30%),
        radial-gradient(circle at 86% 0%, rgba(255, 77, 109, .18), transparent 34%),
        linear-gradient(135deg, #00a884 0%, #0f766e 54%, #2563eb 100%) !important;
    color: #ffffff !important;
}

.sg-home .sg-mobile-welcome :is(h1, h2, p, span, strong),
.sg-home .sg-home-copy :is(h1, h2, p, span, strong) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-home .sg-mobile-welcome h1 > strong,
.sg-home .sg-home-copy h1 > strong {
    background: rgba(255, 255, 255, .16) !important;
    border: 1px solid rgba(255, 255, 255, .30) !important;
    color: #ffffff !important;
}

.sg-home .sg-mobile-status-grid a,
.sg-home .sg-home-search {
    border-color: rgba(255, 255, 255, .42) !important;
    background: rgba(255, 255, 255, .96) !important;
    color: #102a2a !important;
    box-shadow: 0 8px 18px rgba(6, 122, 104, .18) !important;
}

.sg-home .sg-home-search button[type="submit"],
.sg-home .sg-store-action {
    border-color: var(--sg-vivid-teal-dark) !important;
    background: linear-gradient(135deg, var(--sg-vivid-teal), var(--sg-vivid-teal-dark)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 8px 16px rgba(0, 168, 132, .22) !important;
}

.sg-home .sg-home-search button[type="submit"]:hover,
.sg-home .sg-store-action:hover,
.sg-home .sg-store-action:focus {
    border-color: #045f52 !important;
    background: linear-gradient(135deg, #14b8a6, #045f52) !important;
    color: #ffffff !important;
}

.sg-home .sg-home-block-title,
.sg-home .sg-home-category-panel,
.sg-home .sg-home-section {
    border-color: rgba(0, 168, 132, .26) !important;
    background:
        linear-gradient(90deg, rgba(225, 255, 247, .98), rgba(255, 255, 255, .98)),
        radial-gradient(circle at 100% 0%, rgba(255, 194, 51, .20), transparent 32%) !important;
}

.sg-home .sg-home-block-title > div > span,
.sg-home .sg-home-block-title > span {
    border: 1px solid rgba(0, 168, 132, .30) !important;
    background: #ccfbf1 !important;
    color: #0f4f47 !important;
    -webkit-text-fill-color: #0f4f47 !important;
    font-weight: 800 !important;
    text-shadow: none !important;
}

.sg-home .sg-home-block-title h2 {
    color: #0b2f2a !important;
    -webkit-text-fill-color: #0b2f2a !important;
    text-shadow: none !important;
}

.sg-home .sg-home-block-title {
    padding: 10px 12px !important;
    gap: 10px !important;
}

.sg-home .sg-home-block-title > div:first-child {
    display: grid !important;
    gap: 4px !important;
    min-width: 0 !important;
}

.sg-home .sg-home-block-title > div > span,
.sg-home .sg-home-block-title > span {
    min-height: 22px !important;
    padding: 5px 9px !important;
    border-radius: 7px !important;
    line-height: 1 !important;
    width: max-content !important;
    max-width: 100% !important;
}

.sg-home .sg-carousel-actions button,
.sg-home .sg-promo-arrows button {
    border: 1px solid rgba(0, 168, 132, .24) !important;
    background: #ffffff !important;
    color: #0f766e !important;
    box-shadow: 0 4px 10px rgba(15, 23, 42, .08) !important;
}

.sg-home .sg-carousel-actions button:hover,
.sg-home .sg-promo-arrows button:hover {
    border-color: #0f766e !important;
    background: #0f766e !important;
    color: #ffffff !important;
}

.sg-home .sg-promo-slide {
    border: 1px solid rgba(255, 255, 255, .58) !important;
    box-shadow: 0 16px 30px rgba(15, 23, 42, .18) !important;
}

.sg-home .sg-promo-slide::before,
body.sg-theme-acik .sg-promo-slide::before {
    background:
        linear-gradient(180deg, rgba(15, 23, 42, .08) 0%, rgba(15, 23, 42, .58) 56%, rgba(15, 23, 42, .88) 100%),
        linear-gradient(135deg, rgba(0, 168, 132, .36), rgba(255, 77, 109, .18)) !important;
}

.sg-home .sg-promo-slide > span,
body.sg-theme-acik .sg-promo-slide > span {
    background: linear-gradient(135deg, #ff4d6d, #f97316) !important;
    border-color: rgba(255, 255, 255, .74) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-home .sg-promo-slide em,
body.sg-theme-acik .sg-promo-slide em {
    border-color: rgba(255, 255, 255, .88) !important;
    background: #ffffff !important;
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
}

.sg-home .sg-category-tabs button {
    border-color: rgba(0, 168, 132, .22) !important;
    background: #ffffff !important;
    color: #102a2a !important;
}

.sg-home .sg-category-tabs button[aria-selected="true"],
.sg-home .sg-category-tabs button.is-active {
    border-color: transparent !important;
    background: linear-gradient(135deg, #00a884, #2563eb) !important;
    color: #ffffff !important;
}

.sg-home .sg-category-tabs button[aria-selected="true"] :is(i, span),
.sg-home .sg-category-tabs button.is-active :is(i, span) {
    color: #ffffff !important;
}

.sg-home .sg-category-circle,
.sg-home .sg-store-card-top,
.sg-home .sg-bestseller-card {
    border-color: rgba(0, 168, 132, .22) !important;
    background: #ffffff !important;
    box-shadow: 0 12px 26px rgba(15, 23, 42, .08) !important;
}

.sg-home .sg-category-circle:hover,
.sg-home .sg-store-card-top:hover,
.sg-home .sg-bestseller-card:hover {
    border-color: rgba(0, 168, 132, .42) !important;
    box-shadow: 0 18px 34px rgba(0, 168, 132, .16) !important;
}

.sg-home .sg-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 42%, rgba(15, 23, 42, .12) 100%);
}

.sg-home .sg-card-rating,
.sg-home .sg-card-price-badge {
    border-color: rgba(255, 255, 255, .82) !important;
    background: rgba(255, 255, 255, .96) !important;
    color: #102a2a !important;
}

.sg-nearby-page .sg-card-rating,
.sg-nearby-page .sg-card-rating i {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.sg-nearby-shell .sg-store-card-top .sg-card-media {
    position: relative !important;
}

.sg-nearby-shell .sg-store-card-top .sg-card-media::after {
    z-index: 1 !important;
}

.sg-nearby-shell .sg-store-card-top .sg-card-media > .sg-card-rating {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    z-index: 6 !important;
    min-height: 24px !important;
    min-width: 42px !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    transform: none !important;
    clip-path: none !important;
    color: #102a2a !important;
    -webkit-text-fill-color: #102a2a !important;
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid rgba(255, 255, 255, .86) !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .16) !important;
}

.sg-nearby-shell .sg-store-card-top .sg-card-media > .sg-card-rating i {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    color: #f59e0b !important;
    -webkit-text-fill-color: #f59e0b !important;
}

.sg-home .sg-product-tags span:nth-child(1),
.sg-home .sg-product-meta-row span:nth-child(1) {
    border-color: rgba(255, 194, 51, .36) !important;
    background: #fff7cc !important;
    color: #713f12 !important;
}

.sg-home .sg-product-tags span:nth-child(2),
.sg-home .sg-product-meta-row span:nth-child(2) {
    border-color: rgba(0, 168, 132, .28) !important;
    background: #dcfce7 !important;
    color: #14532d !important;
}

.sg-home .sg-product-tags span:nth-child(3),
.sg-home .sg-product-meta-row span:nth-child(3) {
    border-color: rgba(37, 99, 235, .28) !important;
    background: #dbeafe !important;
    color: #1e3a8a !important;
}

.sg-home .sg-store-hours {
    border-color: rgba(34, 197, 94, .30) !important;
    background: #e2f6e9 !important;
    color: #14532d !important;
}

.sg-home .sg-store-hours.is-closed {
    border-color: rgba(255, 77, 109, .34) !important;
    background: #fff1f2 !important;
    color: #9f1239 !important;
}

/* Login choice page: balanced vibrant cards, no washed-out icons or old orange blobs. */
.sg-login-choice-page {
    background:
        radial-gradient(circle at 8% 0%, rgba(0, 168, 132, .16), transparent 30%),
        radial-gradient(circle at 92% 12%, rgba(37, 99, 235, .10), transparent 28%),
        linear-gradient(180deg, #f4fffb 0%, #f8fbff 100%) !important;
}

.sg-login-choice-page .sg-auth-section {
    padding-block: 16px 22px !important;
}

.sg-login-choice-shell {
    width: min(940px, 100%) !important;
    gap: 12px !important;
}

.sg-login-choice-head,
.sg-login-choice-card {
    border-color: rgba(0, 168, 132, .24) !important;
    background: rgba(255, 255, 255, .96) !important;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .08) !important;
}

.sg-login-choice-head {
    align-items: center !important;
    display: flex !important;
    gap: 12px !important;
    padding: 14px 16px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(236, 253, 245, .92)),
        radial-gradient(circle at 100% 0%, rgba(255, 194, 51, .16), transparent 30%) !important;
}

.sg-login-choice-head-icon {
    align-items: center !important;
    background: linear-gradient(135deg, #00a884, #0f766e) !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 20px rgba(0, 168, 132, .20) !important;
    color: #ffffff !important;
    display: inline-flex !important;
    flex: 0 0 46px !important;
    height: 46px !important;
    justify-content: center !important;
    width: 46px !important;
}

.sg-login-choice-head-icon i {
    color: #ffffff !important;
    font-size: 1.28rem !important;
}

.sg-login-choice-head .sg-auth-brand-mark span {
    background: linear-gradient(135deg, #00a884, #0f766e) !important;
    color: #ffffff !important;
}

.sg-login-choice-head .sg-auth-brand-mark span i {
    color: #ffffff !important;
    opacity: 1 !important;
}

.sg-login-choice-head .sg-auth-brand-mark strong {
    color: #0b2f2a !important;
    -webkit-text-fill-color: #0b2f2a !important;
}

.sg-login-choice-head > div > span {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 2 !important;
    width: max-content !important;
    padding: 5px 9px !important;
    border: 1px solid rgba(0, 168, 132, .26) !important;
    border-radius: 7px !important;
    background: #ccfbf1 !important;
    color: #0f4f47 !important;
    -webkit-text-fill-color: #0f4f47 !important;
    line-height: 1 !important;
}

.sg-login-choice-head h1 {
    max-width: 760px !important;
    color: #0b2f2a !important;
    -webkit-text-fill-color: #0b2f2a !important;
    font-size: clamp(1.2rem, 2.2vw, 1.55rem) !important;
    font-weight: 750 !important;
    margin-bottom: 2px !important;
}

.sg-login-choice-head p {
    color: #536b66 !important;
    font-size: .92rem !important;
    margin-bottom: 0 !important;
}

.sg-login-choice-card {
    min-height: 190px !important;
    gap: 9px !important;
    padding: 18px !important;
}

.sg-login-choice-card::after {
    inset: auto -24px -34px auto !important;
    width: 104px !important;
    height: 104px !important;
    background: linear-gradient(135deg, rgba(0, 168, 132, .10), rgba(255, 194, 51, .16)) !important;
}

.sg-login-choice-card:hover,
.sg-login-choice-card:focus-visible {
    border-color: rgba(0, 168, 132, .48) !important;
    box-shadow: 0 20px 42px rgba(0, 168, 132, .14) !important;
}

.sg-login-choice-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 11px !important;
    background: linear-gradient(135deg, #00a884, #0f766e) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 20px rgba(0, 168, 132, .22) !important;
}

.sg-login-choice-card.is-business .sg-login-choice-icon {
    background: linear-gradient(135deg, #0f766e, #2563eb) !important;
}

.sg-login-choice-card.is-courier .sg-login-choice-icon {
    background: linear-gradient(135deg, #2563eb, #7c3aed) !important;
}

.sg-login-choice-icon i {
    color: #ffffff !important;
    opacity: 1 !important;
}

.sg-login-choice-card > strong {
    color: #0b2f2a !important;
    -webkit-text-fill-color: #0b2f2a !important;
    font-weight: 750 !important;
}

.sg-login-choice-card > p {
    color: #536b66 !important;
    font-weight: 400 !important;
}

.sg-login-choice-card > em {
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
    font-weight: 750 !important;
}

.sg-login-choice-bottom {
    color: #536b66 !important;
}

.sg-login-choice-bottom a {
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
}

@media (max-width: 767.98px) {
    .sg-login-choice-head {
        padding: 14px !important;
    }

    .sg-login-choice-card {
        min-height: 0 !important;
        padding: 14px !important;
    }
}

/* Work application modal: readable palette and aligned compact selects. */
.sg-work-apply-modal .sg-modal-dialog {
    border: 1px solid rgba(0, 168, 132, .20) !important;
    background: #ffffff !important;
    box-shadow: 0 24px 54px rgba(15, 23, 42, .18) !important;
}

.sg-work-apply-modal .sg-modal-head {
    align-items: center !important;
    border-bottom: 1px solid rgba(0, 168, 132, .18) !important;
    background:
        radial-gradient(circle at 100% 0%, rgba(37, 99, 235, .10), transparent 34%),
        linear-gradient(135deg, #f0fdfa, #ffffff) !important;
    color: #0b2f2a !important;
    gap: 10px !important;
}

.sg-work-apply-panel .sg-panel-title > span {
    display: inline-flex !important;
    width: max-content !important;
    align-items: center !important;
    border: 1px solid rgba(0, 168, 132, .24) !important;
    border-radius: 7px !important;
    background: #ccfbf1 !important;
    color: #0f4f47 !important;
    -webkit-text-fill-color: #0f4f47 !important;
    font-size: .72rem !important;
    font-weight: 750 !important;
    letter-spacing: .01em !important;
    line-height: 1 !important;
    padding: 5px 9px !important;
}

.sg-work-apply-modal .sg-modal-head h2,
.sg-work-apply-panel .sg-panel-title h2 {
    color: #0b2f2a !important;
    -webkit-text-fill-color: #0b2f2a !important;
    font-weight: 750 !important;
    margin: 0 !important;
}

.sg-work-apply-modal .sg-modal-head p {
    color: #536b66 !important;
    font-size: .88rem !important;
    font-weight: 400 !important;
    margin: 4px 0 0 !important;
}

.sg-work-apply-panel .sg-panel-title p {
    color: #536b66 !important;
    font-weight: 400 !important;
}

.sg-work-choice-grid > label {
    border-color: rgba(0, 168, 132, .22) !important;
    background: linear-gradient(135deg, #ffffff, #f0fdfa) !important;
    color: #12312f !important;
}

.sg-work-choice-grid > label i {
    background: linear-gradient(135deg, #00a884, #0f766e) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(0, 168, 132, .20) !important;
}

.sg-work-choice-grid > label strong {
    color: #0b2f2a !important;
    -webkit-text-fill-color: #0b2f2a !important;
}

.sg-work-choice-grid > label small {
    color: #5e746f !important;
}

.sg-work-choice-grid > input:checked + label {
    border-color: #0f766e !important;
    background: linear-gradient(135deg, #ecfeff, #f0fdfa) !important;
    box-shadow: 0 0 0 3px rgba(0, 168, 132, .14) !important;
}

.sg-work-courier-grid {
    align-items: stretch !important;
}

.sg-work-compact-select {
    position: relative !important;
    display: grid !important;
    gap: 6px !important;
}

.sg-work-compact-select > span {
    display: block !important;
    line-height: 1.15 !important;
}

.sg-work-compact-select > i {
    position: absolute !important;
    left: 12px !important;
    top: 31px !important;
    bottom: auto !important;
    z-index: 2 !important;
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
    font-size: .94rem !important;
    line-height: 1 !important;
    pointer-events: none !important;
}

.sg-work-compact-select .form-select {
    min-height: 40px !important;
    border-color: #cfe8e4 !important;
    background-color: #ffffff !important;
    color: #12312f !important;
    font-weight: 500 !important;
    padding: 8px 32px 8px 38px !important;
}

.sg-work-compact-select .form-select:focus {
    border-color: #0d9488 !important;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, .14) !important;
}

.sg-work-license-check {
    border-color: #cfe8e4 !important;
    background: #f8fffd !important;
    color: #12312f !important;
}

/* Home top status/search contrast guard. */
.sg-home .sg-mobile-status-grid a {
    border-color: #9fd8d0 !important;
    background: #ffffff !important;
    color: #12312f !important;
    -webkit-text-fill-color: #12312f !important;
    opacity: 1 !important;
}

.sg-home .sg-mobile-status-grid a :is(i, span, strong, small) {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    opacity: 1 !important;
}

.sg-home .sg-mobile-status-grid a i {
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
}

.sg-home .sg-home-search {
    border-color: #9fd8d0 !important;
    background: #ffffff !important;
    color: #12312f !important;
    -webkit-text-fill-color: #12312f !important;
}

.sg-home .sg-home-search :is(input, span, strong) {
    color: #12312f !important;
    -webkit-text-fill-color: #12312f !important;
    opacity: 1 !important;
}

.sg-home .sg-home-search input::placeholder {
    color: #7f948f !important;
    -webkit-text-fill-color: #7f948f !important;
    opacity: 1 !important;
}

.sg-home .sg-home-search > i,
.sg-home .sg-home-search .bi-search {
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
}

.sg-home .sg-mobile-status-grid a.is-login-action {
    display: inline-flex !important;
    width: max-content !important;
    min-width: 86px !important;
    justify-self: end !important;
    grid-template-columns: none !important;
    justify-content: center !important;
    gap: 6px !important;
    border-color: #0f766e !important;
    background: linear-gradient(135deg, #0f766e, #0d9488) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 8px 16px rgba(15, 118, 110, .22) !important;
}

.sg-home .sg-mobile-status-grid a.is-login-action :is(i, span) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-home .sg-mobile-status-grid a.is-login-action span {
    max-width: none !important;
    white-space: nowrap !important;
    display: inline !important;
    overflow: visible !important;
}

/* Yak?ndakiler aramas? tek sat?rda kal?r; t?klay?nca ikinci input a??lmaz. */
.sg-nearby-searchbar {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
}

.sg-nearby-searchbar .sg-page-nav {
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 6px 7px 6px 12px !important;
    border: 1px solid #9fd8d0 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(15, 118, 110, .10) !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline > .bi-search {
    width: 22px !important;
    height: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #0f766e !important;
    font-size: .95rem !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline input {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    color: #12312f !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: .84rem !important;
    font-weight: 500 !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline input::placeholder {
    color: #7f948f !important;
    font-weight: 400 !important;
    opacity: 1 !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline .btn {
    min-width: 74px !important;
    min-height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    padding: 0 11px !important;
    border: 1px solid #0f766e !important;
    border-radius: 9px !important;
    color: #fff !important;
    background: #0f766e !important;
    box-shadow: none !important;
    font-size: .76rem !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline .btn:hover {
    border-color: #0b5f59 !important;
    background: #0b5f59 !important;
}

@media (max-width: 575.98px) {
    .sg-nearby-searchbar {
        grid-template-columns: 40px minmax(0, 1fr) !important;
        gap: 7px !important;
    }

    .sg-nearby-searchbar .sg-nearby-search.is-inline {
        grid-template-columns: 18px minmax(0, 1fr) 38px !important;
        gap: 6px !important;
        padding: 5px 5px 5px 9px !important;
        border-radius: 11px !important;
    }

    .sg-nearby-searchbar .sg-nearby-search.is-inline input {
        min-height: 32px !important;
        font-size: .78rem !important;
    }

    .sg-nearby-searchbar .sg-nearby-search.is-inline .btn {
        width: 38px !important;
        min-width: 38px !important;
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 !important;
    }

    .sg-nearby-searchbar .sg-nearby-search.is-inline .btn span {
        display: none !important;
    }
}

/* Store detail final contrast baseline. Keep this at the end so older
   theme rules cannot leave unreadable text or white bands behind. */
.sg-store-detail {
    --sg-detail-page: #f5fbfa;
    --sg-detail-surface: #ffffff;
    --sg-detail-soft: #eef8f6;
    --sg-detail-border: #cfe7e2;
    --sg-detail-text: #0f1f2e;
    --sg-detail-muted: #526273;
    --sg-detail-accent: #0f766e;
    --sg-detail-accent-strong: #0b5f59;
}

body.sg-theme-acik .sg-store-detail,
body.sg-theme-acik .sg-store-detail :is(.sg-store-content-section, .sg-section, .sg-section-white) {
    background: var(--sg-detail-page) !important;
    color: var(--sg-detail-text) !important;
}

body.sg-theme-acik .sg-store-detail :is(.sg-panel, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-contact-card dl > div, .sg-hours-list div) {
    background: var(--sg-detail-surface) !important;
    border-color: var(--sg-detail-border) !important;
    color: var(--sg-detail-text) !important;
}

body.sg-theme-acik .sg-store-detail .sg-panel-title {
    align-items: flex-start !important;
    background: linear-gradient(90deg, #ffffff, #f4fbf9) !important;
    border: 1px solid var(--sg-detail-border) !important;
    border-left: 4px solid var(--sg-detail-accent) !important;
    box-shadow: 0 8px 18px rgba(15, 118, 110, .08) !important;
    color: var(--sg-detail-text) !important;
    gap: 4px !important;
    min-height: 0 !important;
    padding: 10px 12px !important;
}

body.sg-theme-acik .sg-store-detail .sg-panel-title > span {
    background: transparent !important;
    border: 0 !important;
    color: var(--sg-detail-accent) !important;
    font-size: .74rem !important;
    font-weight: 600 !important;
    letter-spacing: .01em !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.sg-theme-acik .sg-store-detail .sg-panel-title :is(h1, h2, h3, strong),
body.sg-theme-acik .sg-store-detail :is(.sg-store-info h1, .sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: var(--sg-detail-text) !important;
}

body.sg-theme-acik .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small, .sg-menu-price del) {
    color: var(--sg-detail-muted) !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav {
    background: var(--sg-detail-soft) !important;
    border: 1px solid var(--sg-detail-border) !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a,
body.sg-theme-acik .sg-store-detail .sg-social-links a {
    background: #ffffff !important;
    border-color: var(--sg-detail-border) !important;
    color: var(--sg-detail-accent-strong) !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a:hover,
body.sg-theme-acik .sg-store-detail .sg-menu-category-nav a:focus,
body.sg-theme-acik .sg-store-detail .sg-social-links a:hover,
body.sg-theme-acik .sg-store-detail .sg-social-links a:focus {
    background: var(--sg-detail-accent) !important;
    border-color: var(--sg-detail-accent) !important;
    color: #ffffff !important;
}

body.sg-theme-acik .sg-store-detail :is(.sg-menu-category-nav a:hover, .sg-menu-category-nav a:focus, .sg-social-links a:hover, .sg-social-links a:focus) * {
    color: #ffffff !important;
}

body.sg-theme-acik .sg-store-detail .sg-menu-flags span {
    background: #f8fafc !important;
    border-color: #dbe7e5 !important;
    color: #334155 !important;
}

body.sg-theme-acik .sg-store-detail .sg-customizable-badge,
body.sg-theme-acik .sg-store-detail .sg-menu-price span {
    background: #ecfdf5 !important;
    border-color: #bbf7d0 !important;
    color: #166534 !important;
}

body.sg-theme-acik .sg-store-detail .sg-badge-warning,
body.sg-theme-acik .sg-store-detail .sg-badge-warning i {
    background: #fff7ed !important;
    border-color: #fed7aa !important;
    color: #9a3412 !important;
}

body.sg-theme-acik .sg-store-detail .sg-badge-success {
    background: #ecfdf5 !important;
    border-color: #bbf7d0 !important;
    color: #166534 !important;
}

body.sg-theme-acik .sg-store-detail .sg-badge-info {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
    color: #1d4ed8 !important;
}

body.sg-theme-acik .sg-store-detail .sg-badge-money {
    background: #fff1f2 !important;
    border-color: #fecdd3 !important;
    color: #be123c !important;
}

body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail {
    --sg-detail-page: #0b1220;
    --sg-detail-surface: #101827;
    --sg-detail-soft: #0f172a;
    --sg-detail-border: #263449;
    --sg-detail-text: #f8fafc;
    --sg-detail-muted: #cbd5e1;
    --sg-detail-accent: #2dd4bf;
    --sg-detail-accent-strong: #99f6e4;
}

body.sg-theme-koyu .sg-store-detail,
body[data-customer-theme="koyu"] .sg-store-detail,
body.sg-theme-koyu .sg-store-detail :is(.sg-store-content-section, .sg-section, .sg-section-white),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-content-section, .sg-section, .sg-section-white) {
    background: var(--sg-detail-page) !important;
    color: var(--sg-detail-text) !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-contact-card dl > div, .sg-hours-list div),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel, .sg-menu-section, .sg-menu-section summary, .sg-menu-list, .sg-menu-item, .sg-contact-card, .sg-social-card, .sg-restaurant-info-card, .sg-info-row, .sg-info-row summary, .sg-info-row-body, .sg-contact-card dl > div, .sg-hours-list div) {
    background: var(--sg-detail-surface) !important;
    border-color: var(--sg-detail-border) !important;
    color: var(--sg-detail-text) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title,
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title {
    background: linear-gradient(90deg, #101827, #0f172a) !important;
    border: 1px solid var(--sg-detail-border) !important;
    border-left: 4px solid var(--sg-detail-accent) !important;
    color: var(--sg-detail-text) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-panel-title > span,
body[data-customer-theme="koyu"] .sg-store-detail .sg-panel-title > span {
    background: transparent !important;
    border: 0 !important;
    color: var(--sg-detail-accent-strong) !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-panel-title h1, .sg-panel-title h2, .sg-panel-title h3, .sg-store-info h1, .sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-panel-title h1, .sg-panel-title h2, .sg-panel-title h3, .sg-store-info h1, .sg-menu-category-title strong, .sg-menu-item h3, .sg-menu-price strong, .sg-contact-card dd, .sg-info-row summary span, .sg-hours-list strong, .sg-hours-list span) {
    color: var(--sg-detail-text) !important;
}

body.sg-theme-koyu .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small, .sg-menu-price del),
body[data-customer-theme="koyu"] .sg-store-detail :is(.sg-store-info p, .sg-menu-item p, .sg-contact-card dt, .sg-info-row summary small, .sg-info-row-body p, .sg-menu-section summary small, .sg-menu-price del) {
    color: var(--sg-detail-muted) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-menu-category-nav,
body[data-customer-theme="koyu"] .sg-store-detail .sg-menu-category-nav {
    background: var(--sg-detail-soft) !important;
    border: 1px solid var(--sg-detail-border) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-menu-category-nav a,
body.sg-theme-koyu .sg-store-detail .sg-social-links a,
body[data-customer-theme="koyu"] .sg-store-detail .sg-menu-category-nav a,
body[data-customer-theme="koyu"] .sg-store-detail .sg-social-links a {
    background: #111827 !important;
    border-color: var(--sg-detail-border) !important;
    color: var(--sg-detail-accent-strong) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-product-qty,
body[data-customer-theme="koyu"] .sg-store-detail .sg-product-qty {
    background: #111827 !important;
    border-color: var(--sg-detail-border) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-product-qty button,
body[data-customer-theme="koyu"] .sg-store-detail .sg-product-qty button {
    background: #0f172a !important;
    color: var(--sg-detail-accent-strong) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-product-qty input,
body[data-customer-theme="koyu"] .sg-store-detail .sg-product-qty input {
    background: #111827 !important;
    border-color: var(--sg-detail-border) !important;
    color: var(--sg-detail-text) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-customizer-quantity,
body[data-customer-theme="koyu"] .sg-store-detail .sg-customizer-quantity {
    background: #0f172a !important;
    border-color: var(--sg-detail-border) !important;
}

body.sg-theme-koyu .sg-store-detail .sg-customizer-quantity > span,
body[data-customer-theme="koyu"] .sg-store-detail .sg-customizer-quantity > span {
    color: var(--sg-detail-text) !important;
}

/* Home best-seller price badge: price belongs on the image, not in the info row. */
.sg-home .sg-bestseller-card .sg-card-media {
    position: relative !important;
}

.sg-home .sg-bestseller-card .sg-card-price-badge {
    top: 8px !important;
    right: 3px !important;
    min-height: 20px !important;
}

.sg-home .sg-bestseller-card .sg-card-price-badge strong {
    font-size: .67rem !important;
    font-weight: 650 !important;
}

/* Store product quantity controls must stay visible on every viewport. */
.sg-store-detail .sg-menu-item {
    grid-template-columns: 96px minmax(0, 1fr) auto !important;
}

.sg-store-detail .sg-product-actions {
    width: auto !important;
    min-width: 30px !important;
    justify-items: center !important;
}

.sg-store-detail .sg-product-qty {
    grid-template-columns: 28px 34px 28px !important;
    width: 92px !important;
    min-width: 92px !important;
    height: 32px !important;
    overflow: visible !important;
    border-color: #99f6e4 !important;
    background: #ffffff !important;
}

.sg-store-detail .sg-product-qty button {
    width: 28px !important;
    height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 0 !important;
    background: #0f766e !important;
    color: #ffffff !important;
    font-size: .9rem !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.sg-store-detail .sg-product-qty input {
    width: 34px !important;
    height: 30px !important;
    color: #0f172a !important;
    background: #ffffff !important;
    border-color: #dbe7e3 !important;
    opacity: 1 !important;
}

body.sg-theme-koyu .sg-store-detail .sg-product-qty,
body[data-customer-theme="koyu"] .sg-store-detail .sg-product-qty {
    border-color: #2dd4bf !important;
    background: #0f172a !important;
}

body.sg-theme-koyu .sg-store-detail .sg-product-qty button,
body[data-customer-theme="koyu"] .sg-store-detail .sg-product-qty button {
    background: #14b8a6 !important;
    color: #ffffff !important;
}

body.sg-theme-koyu .sg-store-detail .sg-product-qty input,
body[data-customer-theme="koyu"] .sg-store-detail .sg-product-qty input {
    background: #111827 !important;
    color: #f8fafc !important;
    border-color: #334155 !important;
}

@media (max-width: 575.98px) {
    .sg-store-detail .sg-menu-item {
        grid-template-columns: 72px minmax(0, 1fr) 94px !important;
        gap: 7px !important;
    }

    .sg-store-detail .sg-product-actions .btn {
        width: 34px !important;
        height: 32px !important;
    }
}

/* Login sa? g?rsel kartlar?: tema kurallar? metin kontrast?n? ezmesin. */
.sg-login-side-card,
.sg-panel-login-visual {
    color: #ffffff !important;
}

.sg-login-side-card > div,
.sg-panel-login-visual > div {
    background: linear-gradient(180deg, rgba(15, 23, 42, .88), rgba(15, 23, 42, .98)) !important;
}

.sg-login-side-card :is(h2, strong, b),
.sg-panel-login-visual :is(h2, strong, b) {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(2, 6, 23, .45);
}

.sg-login-side-card :is(p, li, small),
.sg-panel-login-visual :is(p, li, small) {
    color: #e2e8f0 !important;
}

.sg-login-side-card span,
.sg-panel-login-visual span {
    border-color: rgba(255, 255, 255, .28) !important;
    background: rgba(15, 23, 42, .62) !important;
    color: #ffffff !important;
}

.sg-login-side-card :is(i),
.sg-panel-login-visual :is(i) {
    color: #99f6e4 !important;
}

.sg-login-side-card :is(h1, h2, h3, h4, h5, h6, strong, b, a),
.sg-panel-login-visual :is(h1, h2, h3, h4, h5, h6, strong, b, a) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-login-side-card :is(p, li, small, em),
.sg-panel-login-visual :is(p, li, small, em) {
    color: #e5edf5 !important;
    -webkit-text-fill-color: #e5edf5 !important;
}

.sg-login-side-card li span,
.sg-panel-login-visual li span {
    color: #e5edf5 !important;
    -webkit-text-fill-color: #e5edf5 !important;
}

.sg-login-side-card > div :is(h2, p, li, span),
.sg-login-side-card > div :is(h2, p, li, span) *,
.sg-panel-login-visual > div :is(h2, p, li, span),
.sg-panel-login-visual > div :is(h2, p, li, span) * {
    text-shadow: 0 1px 2px rgba(2, 6, 23, .5);
}

/* Role login contrast guard: active tabs and visual text must stay readable. */
.sg-panel-login-shell .sg-ops-tabs a.is-active,
.sg-panel-login-shell .sg-ops-tabs a.is-active i,
.sg-panel-login-shell .sg-ops-tabs a.is-active span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-panel-login-shell .sg-ops-tabs a.is-active .bi::before,
.sg-panel-login-shell .sg-ops-tabs a.is-active [class^="bi-"]::before,
.sg-panel-login-shell .sg-ops-tabs a.is-active [class*=" bi-"]::before {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-panel-login-visual > div :is(h1, h2, h3, h4, h5, h6),
.sg-panel-login-visual > div h2 {
    color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: 0 1px 2px rgba(2, 6, 23, .55);
}

.sg-panel-login-visual > div :is(p, small, li) {
    color: #e2e8f0 !important;
    opacity: 1 !important;
}

.sg-panel-login-visual > div > span {
    color: #ccfbf1 !important;
}

.sg-panel-login-visual > div > span i {
    color: #5eead4 !important;
}

.sg-panel-login-visual li {
    background: rgba(30, 41, 59, .92) !important;
    border-color: rgba(148, 163, 184, .42) !important;
    color: #ffffff !important;
}

.sg-panel-login-visual li i,
.sg-panel-login-visual li span {
    color: #ffffff !important;
}

body .sg-panel-login-page .sg-panel-login-visual > div :is(h1, h2, h3, h4, h5, h6, strong, b),
body.sg-theme-acik .sg-panel-login-page .sg-panel-login-visual > div :is(h1, h2, h3, h4, h5, h6, strong, b),
body.sg-theme-koyu .sg-panel-login-page .sg-panel-login-visual > div :is(h1, h2, h3, h4, h5, h6, strong, b) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body .sg-panel-login-page .sg-panel-login-visual > div :is(p, small, li, span),
body.sg-theme-acik .sg-panel-login-page .sg-panel-login-visual > div :is(p, small, li, span),
body.sg-theme-koyu .sg-panel-login-page .sg-panel-login-visual > div :is(p, small, li, span) {
    color: #e5edf5 !important;
    -webkit-text-fill-color: #e5edf5 !important;
}

body .sg-panel-login-page .sg-panel-login-visual > div > span,
body.sg-theme-acik .sg-panel-login-page .sg-panel-login-visual > div > span,
body.sg-theme-koyu .sg-panel-login-page .sg-panel-login-visual > div > span {
    background: rgba(15, 23, 42, .72) !important;
    border-color: rgba(255, 255, 255, .34) !important;
    color: #ccfbf1 !important;
    -webkit-text-fill-color: #ccfbf1 !important;
}

body .sg-panel-login-page .sg-panel-login-visual > div :is(i),
body.sg-theme-acik .sg-panel-login-page .sg-panel-login-visual > div :is(i),
body.sg-theme-koyu .sg-panel-login-page .sg-panel-login-visual > div :is(i) {
    color: #5eead4 !important;
    -webkit-text-fill-color: #5eead4 !important;
}

/* Desktop login balance: form side should be slightly wider than visual side. */
@media (min-width: 992px) {
    .sg-login-clean-shell {
        grid-template-columns: minmax(0, calc(100% - 351px)) 335px !important;
    }

    .sg-panel-login-shell {
        grid-template-columns: minmax(0, calc(100% - 369px)) 355px !important;
    }
}

body :is(.sg-forgot-captcha .sg-captcha-row strong) {
    background: #ffffff !important;
    border-color: #14b8a6 !important;
    color: #0f766e !important;
}

/* Yak?ndakiler kart puan? hover beklemeden daima g?r?n?r. */
body .sg-nearby-page .sg-store-card-top .sg-card-media > .sg-card-rating,
body .sg-nearby-shell .sg-store-card-top .sg-card-media > .sg-card-rating {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    z-index: 20 !important;
    transform: none !important;
    color: #102a2a !important;
    -webkit-text-fill-color: #102a2a !important;
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid rgba(255, 255, 255, .9) !important;
}

body .sg-nearby-page .sg-store-card-top .sg-card-media > .sg-card-rating *,
body .sg-nearby-shell .sg-store-card-top .sg-card-media > .sg-card-rating * {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Yak?ndakiler yatay kart?nda g?rsel eski halinden sadece biraz daha y?ksek olur. */
body .sg-nearby-page .sg-store-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 7px !important;
}

body .sg-nearby-page .sg-store-card-top {
    display: grid !important;
    grid-template-columns: 184px minmax(0, 1fr) !important;
    align-items: start !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
}

body .sg-nearby-page .sg-store-card-top .sg-card-media {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    align-self: start !important;
    margin: 14px 0 10px 14px !important;
    width: calc(100% - 14px) !important;
    border-radius: 8px !important;
}

body .sg-nearby-page .sg-store-card-top .sg-card-media img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
}

body .sg-nearby-page .sg-store-card-top .sg-store-body {
    align-self: start !important;
    min-height: 0 !important;
    padding: 14px 18px !important;
    align-content: start !important;
}

body .sg-nearby-page .sg-store-card-top .sg-store-action {
    margin-top: 2px !important;
}

@media (max-width: 767.98px) {
    body .sg-nearby-page .sg-store-card-top {
        grid-template-columns: 126px minmax(0, 1fr) !important;
        min-height: 0 !important;
    }

    body .sg-nearby-page .sg-store-card-top .sg-card-media,
    body .sg-nearby-page .sg-store-card-top .sg-card-media img,
    body .sg-nearby-page .sg-store-card-top .sg-store-body {
        min-height: 0 !important;
    }

    body .sg-nearby-page .sg-store-card-top .sg-store-body {
        padding: 10px 11px !important;
    }

    body .sg-nearby-page .sg-store-card-top .sg-card-media {
        margin: 10px 0 9px 10px !important;
        width: calc(100% - 10px) !important;
    }
}

@media (max-width: 430px) {
    body .sg-nearby-page .sg-store-card-top {
        grid-template-columns: 112px minmax(0, 1fr) !important;
        min-height: 0 !important;
    }

    body .sg-nearby-page .sg-store-card-top .sg-card-media,
    body .sg-nearby-page .sg-store-card-top .sg-card-media img,
    body .sg-nearby-page .sg-store-card-top .sg-store-body {
        min-height: 0 !important;
    }
}

.sg-region-cascade {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    width: 100%;
}

.sg-region-cascade-row {
    align-items: center;
    display: grid;
    gap: 5px;
    grid-template-columns: max-content minmax(0, 1fr);
    margin: 0;
    min-width: 0;
}

.sg-region-cascade-row > span {
    color: #12312f;
    font-size: .78rem;
    font-weight: 750;
    line-height: 1.2;
    white-space: nowrap;
}

.sg-region-cascade select,
.sg-region-cascade-row select {
    appearance: none;
    background-color: #ffffff !important;
    border: 1px solid #99f6e4 !important;
    border-radius: 8px !important;
    color: #12312f !important;
    cursor: pointer;
    font-weight: 650;
    min-width: 0;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.sg-region-cascade select:hover,
.sg-region-cascade-row select:hover {
    background-color: #f0fdfa !important;
    border-color: #2dd4bf !important;
}

.sg-region-cascade select:focus,
.sg-region-cascade-row select:focus {
    background-color: #ffffff !important;
    border-color: #0f766e !important;
    box-shadow: 0 0 0 .14rem rgba(20, 184, 166, .18) !important;
    color: #0f172a !important;
    outline: none !important;
}

.sg-region-cascade select:disabled,
.sg-region-cascade-row select:disabled {
    background-color: #f8fafc !important;
    border-color: #dbe7e5 !important;
    color: #94a3b8 !important;
    cursor: not-allowed;
    opacity: 1;
}

.sg-region-cascade select option,
.sg-region-cascade-row select option {
    background: #ffffff;
    color: #0f172a;
}

.sg-region-cascade select option:checked,
.sg-region-cascade-row select option:checked {
    background: #ccfbf1;
    color: #0f766e;
}

/* Anasayfa i?letme kartlar?: kompakt Bootstrap ritmi. */
.sg-home .sg-store,
.sg-home .sg-store-card-top {
    border-radius: 5px;
}

.sg-home .sg-store-body {
    grid-template-rows: auto minmax(25px, auto) auto auto auto;
    gap: 3px;
    padding: 11px 5px 5px;
}

.sg-region-multi {
    grid-column: 1 / -1;
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 10px;
    border: 1px solid rgba(20, 184, 166, 0.24);
    border-radius: 8px;
    background: #f8fffd;
}

.sg-region-multi-head {
    display: grid;
    gap: 2px;
    margin: 0;
    padding: 0;
}

.sg-region-multi-head span {
    color: #0f3f3a;
    font-size: .82rem;
    font-weight: 700;
}

.sg-region-multi-head small {
    color: #64748b;
    font-size: .68rem;
    font-weight: 500;
    line-height: 1.25;
}

.sg-region-multi-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    min-width: 0;
}

.sg-region-multi-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    min-width: 0;
}

.sg-region-multi-options p {
    grid-column: 1 / -1;
    margin: 0;
    color: #64748b;
    font-size: .72rem;
    font-weight: 500;
}

.sg-region-multi-options label {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 7px;
    min-width: 0;
    min-height: 42px;
    padding: 7px 8px;
    border: 1px solid rgba(20, 184, 166, 0.18);
    border-radius: 7px;
    background: #ffffff;
    cursor: pointer;
}

.sg-region-multi-options label.is-district {
    grid-column: 1 / -1;
    background: #ecfdf5;
    border-color: rgba(15, 118, 110, 0.25);
}

.sg-region-multi-options input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    min-height: 18px;
}

.sg-region-multi-options label > span,
.sg-region-multi-options label > div {
    min-width: 0;
}

.sg-region-multi-options strong {
    display: block;
    color: #0f172a;
    font-size: .76rem;
    font-weight: 650;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.sg-region-multi-options small {
    display: block;
    color: #64748b;
    font-size: .64rem;
    font-weight: 500;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.sg-region-multi-selected {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.sg-region-multi-selected span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 7px;
    border-radius: 999px;
    background: #0f766e;
    color: #ffffff;
    font-size: .68rem;
    font-weight: 700;
}

.sg-delivery-zone-list-panel {
    display: grid;
    gap: 8px;
    width: 100%;
    max-width: 1120px;
    margin-inline: auto;
    box-sizing: border-box;
}

.sg-delivery-zone-form-panel {
    width: 100%;
    max-width: 1120px;
    margin-inline: auto;
    box-sizing: border-box;
    overflow: visible;
}

.sg-delivery-zone-form-panel .sg-admin-edit-form {
    grid-template-columns: 1fr;
}

.sg-delivery-zone-form-panel .sg-admin-edit-form.is-delivery-zone-form {
    display: block;
}

.sg-admin-edit-form.is-delivery-zone-form {
    display: block;
    width: 100%;
}

.sg-delivery-zone-inner {
    box-sizing: border-box;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    gap: 8px;
    min-width: 0;
}

.sg-admin-edit-form.is-delivery-zone-form .sg-delivery-zone-inner {
    width: 100%;
    max-width: none;
}

.sg-delivery-zone-inner .sg-region-multi {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
}

.sg-admin-edit-form.is-delivery-zone-form .sg-region-multi {
    width: 100%;
}

.sg-delivery-zone-form-panel .sg-admin-form-actions {
    justify-content: flex-start !important;
    align-items: center;
    align-self: start;
    width: 100%;
    margin: 0;
}

.sg-delivery-zone-form-panel .sg-admin-form-actions .btn {
    margin-left: 0 !important;
}

.sg-delivery-zone-action-container {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end !important;
}

.sg-delivery-zone-list-container {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

.sg-delivery-zone-list-container .sg-business-detail-list {
    width: 100%;
}

.sg-delivery-zone-list-container .sg-business-detail-list article {
    grid-template-columns: minmax(0, 1fr) auto;
}

.sg-delivery-zone-list-container .sg-business-detail-list article time {
    display: none;
}

@media (max-width: 575.98px) {
    .sg-region-cascade {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .sg-region-cascade-row {
        grid-template-columns: max-content minmax(0, 1fr);
    }

    .sg-region-multi-controls,
    .sg-region-multi-options {
        grid-template-columns: 1fr;
    }

    .sg-region-multi {
        padding: 8px;
    }

    .sg-delivery-zone-list-container {
        max-width: none;
    }

    .sg-delivery-zone-list-panel {
        max-width: none;
    }

    .sg-delivery-zone-form-panel {
        max-width: none;
    }

    .sg-delivery-zone-list-container .sg-business-detail-list article {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991.98px) {
    .sg-region-multi-options {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 992px) {
    .sg-admin-edit-form.is-delivery-zone-form .sg-region-multi-options {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sg-admin-edit-form.is-delivery-zone-form .sg-region-multi-options label.is-district {
        grid-column: 1 / -1;
    }
}

/* ?yelik sa? bilgi kart?nda koyu zemin ?st?ndeki yaz?lar? tema kurallar? ezmesin. */
body .sg-register-side-card .sg-register-side-content,
body.sg-theme-koyu .sg-register-side-card .sg-register-side-content {
    color: #ffffff !important;
}

body .sg-register-side-card .sg-register-side-content h2,
body .sg-register-side-card .sg-register-side-content p,
body .sg-register-side-card .sg-register-side-content span,
body .sg-register-side-card .sg-register-side-content strong,
body.sg-theme-koyu .sg-register-side-card .sg-register-side-content h2,
body.sg-theme-koyu .sg-register-side-card .sg-register-side-content p,
body.sg-theme-koyu .sg-register-side-card .sg-register-side-content span,
body.sg-theme-koyu .sg-register-side-card .sg-register-side-content strong {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body .sg-register-side-card .sg-register-feature-grid strong,
body.sg-theme-koyu .sg-register-side-card .sg-register-feature-grid strong {
    color: #e6fffb !important;
    -webkit-text-fill-color: #e6fffb !important;
}

body .sg-register-side-card .sg-register-side-content i,
body.sg-theme-koyu .sg-register-side-card .sg-register-side-content i {
    color: #5eead4 !important;
    -webkit-text-fill-color: #5eead4 !important;
}

.sg-register-form :is(.form-control, .form-select) {
    min-height: 38px !important;
    padding-bottom: 8px !important;
    padding-top: 8px !important;
}

.sg-page.sg-auth-page > .sg-section > .container:has(> .sg-register-shell) {
    max-width: 1035px !important;
    overflow: visible !important;
    width: min(100% - 24px, 1035px) !important;
}

/* ?deme adres kartlar?: konum durumu ve haritadan tamamlama aksiyonu. */
.sg-address-choice {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.sg-address-location-state {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-size: .68rem;
    font-style: normal;
    font-weight: 700;
    gap: 4px;
    line-height: 1;
    margin-top: 5px;
    padding: 4px 6px;
    width: fit-content;
}

.sg-address-location-state.is-ready {
    background: #e2f6e9;
    border: 1px solid rgba(22, 163, 74, .22);
    color: #14532d;
}

.sg-address-location-state.is-missing {
    background: #fff7ed;
    border: 1px solid rgba(249, 115, 22, .28);
    color: #9a3412;
}

.sg-address-map-link {
    align-items: center;
    align-self: center;
    background: #ecfeff;
    border: 1px solid rgba(15, 118, 110, .24);
    border-radius: 6px;
    color: #0f766e;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 700;
    gap: 5px;
    justify-content: center;
    line-height: 1;
    padding: 7px 9px;
    text-decoration: none;
    white-space: nowrap;
}

.sg-address-map-link:hover,
.sg-address-map-link:focus {
    background: #0f766e;
    color: #fff;
}

.sg-payment-address-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

.sg-current-location-box {
    margin-top: 8px;
}

.sg-current-location-box.is-disabled {
    display: none;
}

.sg-current-location-choice {
    border-color: rgba(15, 118, 110, .28);
    background: #f0fdfa;
}

.sg-current-location-panel {
    border: 1px solid rgba(15, 118, 110, .18);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    margin-top: 8px;
    padding: 8px;
}

.sg-current-location-map {
    display: grid;
    gap: 8px;
    position: relative;
}

.sg-current-location-map .sg-map-canvas {
    height: clamp(260px, 42vh, 420px);
}

.sg-current-location-confirm-row {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.sg-current-location-confirm-row .btn[data-current-delivery-confirm] {
    align-items: center;
    box-shadow: 0 12px 28px rgba(15, 118, 110, .22);
    display: inline-flex;
    gap: 5px;
    position: absolute;
    right: 12px;
    top: calc(12px + 58px);
    z-index: 450;
}

.sg-current-location-confirm-row small {
    color: #475569;
    font-size: .72rem;
    padding-right: 0;
}

@media (max-width: 575.98px) {
    .sg-address-choice {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .sg-address-map-link {
        grid-column: 2;
        justify-self: start;
    }

    .sg-current-location-confirm-row .btn[data-current-delivery-confirm] {
        right: 10px;
        top: calc(10px + 70px);
    }
}

/* Final contrast guard: light outline buttons must never turn white-on-light on hover. */
body:not(.sg-theme-koyu) :is(.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-light:hover, .btn-outline-light:focus):not(.sg-header *):not(.sg-footer *) {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
}

body:not(.sg-theme-koyu) :is(.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-light:hover, .btn-outline-light:focus):not(.sg-header *):not(.sg-footer *) :is(i, span, strong, small, b) {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
}

.sg-panel-login-head .sg-auth-brand-mark > span,
.sg-panel-login-head .sg-auth-brand-mark > span :is(i, svg),
.sg-panel-login-head .sg-auth-brand-mark > span [class^="bi-"]::before,
.sg-panel-login-head .sg-auth-brand-mark > span [class*=" bi-"]::before {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Scoped auth form alignment: login, register and application forms keep separate rules. */
.sg-login-clean-form .sg-auth-input,
.sg-panel-login-form .sg-auth-input {
    --sg-auth-label-width: 50px;
    align-items: center !important;
    column-gap: 5px !important;
    display: grid !important;
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
    position: relative !important;
}

.sg-forgot-form .sg-auth-input {
    --sg-auth-label-width: 102px;
    align-items: center !important;
    column-gap: 5px !important;
    display: grid !important;
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
    position: relative !important;
}

.sg-register-form .sg-auth-input,
.sg-work-apply-form .sg-auth-input {
    --sg-auth-label-width: 132px;
    align-items: center !important;
    column-gap: 8px !important;
    display: grid !important;
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
    position: relative !important;
}

.sg-register-grid-2 .sg-auth-input,
.sg-work-form-grid .sg-auth-input,
.sg-work-courier-grid .sg-auth-input {
    --sg-auth-label-width: 84px;
}

.sg-work-extra-business .sg-auth-input,
.sg-work-message.sg-auth-input {
    --sg-auth-label-width: 84px;
}

.sg-login-clean-form .sg-auth-input::after,
.sg-panel-login-form .sg-auth-input::after,
.sg-forgot-form .sg-auth-input::after,
.sg-register-form .sg-auth-input::after,
.sg-work-apply-form .sg-auth-input::after {
    content: "";
    grid-column: 2;
    grid-row: 1;
    pointer-events: none;
}

.sg-login-clean-form .sg-auth-input > span {
    align-self: center !important;
    color: #12312f !important;
    font-size: .70rem !important;
    font-weight: 700 !important;
    grid-column: 1 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.sg-panel-login-form .sg-auth-input > span {
    align-self: center !important;
    color: #12312f !important;
    font-size: .70rem !important;
    font-weight: 700 !important;
    grid-column: 1 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.sg-forgot-form .sg-auth-input > span {
    align-self: center !important;
    color: #12312f !important;
    font-size: .70rem !important;
    font-weight: 700 !important;
    grid-column: 1 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.sg-register-form .sg-auth-input > span {
    align-self: center !important;
    color: #12312f !important;
    font-size: .70rem !important;
    font-weight: 700 !important;
    grid-column: 1 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.sg-work-apply-form .sg-auth-input > span {
    align-self: center !important;
    color: #12312f !important;
    font-size: .70rem !important;
    font-weight: 700 !important;
    grid-column: 1 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.sg-login-clean-form .sg-auth-input > :is(input, textarea, select, .form-control, .form-select),
.sg-panel-login-form .sg-auth-input > :is(input, textarea, select, .form-control, .form-select),
.sg-forgot-form .sg-auth-input > :is(input, textarea, select, .form-control, .form-select),
.sg-register-form .sg-auth-input > :is(input, textarea, select, .form-control, .form-select, .sg-region-cascade),
.sg-work-apply-form .sg-auth-input > :is(input, textarea, select, .form-control, .form-select, .sg-region-cascade) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
}

.sg-login-clean-form .sg-auth-input > i,
.sg-panel-login-form .sg-auth-input > i,
.sg-forgot-form .sg-auth-input > i,
.sg-register-form .sg-auth-input > i,
.sg-work-apply-form .sg-auth-input > i {
    align-self: center !important;
    bottom: auto !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    left: 12px !important;
    margin: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 2 !important;
}

.sg-register-form .sg-auth-input:has(.sg-region-cascade) > i,
.sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) > i,
.sg-work-apply-form .sg-auth-input:has(textarea) > i {
    align-self: start !important;
    bottom: auto !important;
    left: 12px !important;
    margin-top: 11px !important;
    position: absolute !important;
    top: 0 !important;
    transform: none !important;
}

.sg-auth-input:has(.sg-region-cascade) > span,
.sg-auth-input:has(.sg-region-cascade) > i {
    display: none !important;
}

.sg-register-form .sg-auth-input:has(.sg-region-cascade),
.sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) {
    display: grid !important;
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
}

.sg-register-form .sg-auth-input:has(.sg-region-cascade) > .sg-region-cascade,
.sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) > .sg-region-cascade {
    display: grid !important;
    grid-column: 1 / -1 !important;
}

.sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) .sg-region-cascade-row {
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
}

@media (min-width: 768px) {
    .sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) .sg-region-cascade {
        column-gap: 8px !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) .sg-region-cascade-row:nth-child(3) {
        grid-column: 1 / -1 !important;
    }
}

.sg-work-extra-business .sg-auth-input,
.sg-work-message.sg-auth-input {
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
}

.sg-work-extra-business {
    display: grid !important;
    gap: 8px !important;
}

.sg-work-tax-field {
    grid-template-columns: var(--sg-auth-label-width) minmax(220px, 1fr) auto !important;
}

@media (min-width: 768px) {
    .sg-work-apply-form .sg-work-form-grid,
    .sg-work-apply-form .sg-work-extra-business,
    .sg-work-apply-form .sg-work-courier-grid {
        column-gap: 8px !important;
        row-gap: 8px !important;
    }

    .sg-work-apply-form .sg-work-form-grid .sg-auth-input,
    .sg-work-apply-form .sg-work-courier-grid .sg-auth-input,
    .sg-work-apply-form .sg-work-extra-business .sg-auth-input,
    .sg-work-apply-form .sg-work-message.sg-auth-input {
        --sg-auth-label-width: 74px !important;
        column-gap: 5px !important;
    }

    .sg-work-apply-form .sg-auth-input:has(.sg-region-cascade) .sg-region-cascade-row {
        grid-template-columns: 74px minmax(0, 1fr) !important;
    }

    .sg-work-tax-field {
        grid-template-columns: 74px minmax(0, 1fr) !important;
    }

    .sg-work-tax-field .sg-work-field-note {
        grid-column: 2;
        grid-row: 2;
        justify-self: start;
        margin-top: 4px;
        max-width: 100%;
        min-height: 24px;
        padding: 4px 7px;
        white-space: normal;
    }
}

.sg-work-tax-field > input {
    grid-column: 2 !important;
}

.sg-work-apply-form .sg-work-tax-field > i.bi-receipt-cutoff {
    left: 12px !important;
    top: 15px !important;
    transform: translateY(-50%) !important;
}

.sg-work-tax-field .sg-work-field-note {
    align-items: center;
    align-self: center;
    background: #fefcfc;
    border: 1px solid #5f0606;
    border-radius: 8px;
    color: #ef0e0e;
    display: inline-flex;
    font-size: .65rem;
    font-weight: 600;
    gap: 3px;
    grid-column: 3;
    grid-row: 1;
    line-height: 1.15;
    min-height: 30px;
    padding: 5px 8px;
    white-space: nowrap;
}

.sg-work-tax-field .sg-work-field-note i {
    color: #ea580c;
    font-size: .78rem;
}

@media (max-width: 991.98px) {
    .sg-work-tax-field {
        grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
    }

    .sg-work-tax-field .sg-work-field-note {
        grid-column: 2;
        grid-row: 2;
        justify-self: start;
        margin-top: 4px;
        max-width: 100%;
        min-height: 24px;
        padding: 4px 7px;
        white-space: normal;
    }
}

.sg-login-clean-form .sg-auth-input :is(input, textarea, select, .form-control, .form-select),
.sg-panel-login-form .sg-auth-input :is(input, textarea, select, .form-control, .form-select),
.sg-forgot-form .sg-auth-input :is(input, textarea, select, .form-control, .form-select),
.sg-register-form .sg-auth-input :is(input, textarea, select, .form-control, .form-select),
.sg-work-apply-form .sg-auth-input :is(input, textarea, select, .form-control, .form-select) {
    font-size: .9rem !important;
    min-height: 42px !important;
    padding-left: 34px !important;
}

.sg-work-apply-form .sg-phone-prefix-field .sg-phone-prefix {
    align-items: center;
    align-self: center;
    background: #ecfeff;
    border: 1px solid #99f6e4;
    border-radius: 6px;
    color: #0f766e;
    display: inline-flex;
    font-size: .7rem;
    font-style: normal;
    font-weight: 900;
    grid-column: 2;
    grid-row: 1;
    height: 22px;
    justify-content: center;
    left: 31px;
    line-height: 1;
    min-width: 34px;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
}

.sg-work-apply-form .sg-phone-prefix-field > input.form-control {
    padding-left: 74px !important;
}

body.sg-theme-koyu :is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > span {
    color: #f8fafc !important;
}

/* Customer login switch must stay in one row. */
.sg-login-clean .sg-auth-switch {
    align-items: center !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    justify-content: flex-start !important;
    margin-top: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
}

.sg-login-clean .sg-auth-switch > span {
    flex: 0 0 auto !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

.sg-login-clean .sg-auth-switch > a {
    align-items: center !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin-left: 0 !important;
    min-height: 38px !important;
    min-width: max-content !important;
    padding: 7px 10px !important;
    white-space: nowrap !important;
    width: auto !important;
}

/* Final customer register layout: keep the membership form aligned on desktop and mobile. */
.sg-register-card {
    gap: 9px !important;
    padding: 12px !important;
}

.sg-register-form {
    display: grid !important;
    gap: 8px !important;
}

.sg-register-form .sg-auth-input {
    --sg-auth-label-width: 88px !important;
    column-gap: 6px !important;
}

.sg-register-grid-2 {
    gap: 8px !important;
}

.sg-register-grid-2 .sg-auth-input {
    --sg-auth-label-width: 76px !important;
}

.sg-register-form .sg-auth-input > span {
    font-size: .74rem !important;
    line-height: 1.1 !important;
}

.sg-register-form .sg-auth-input > :is(input, select, textarea, .form-control, .form-select) {
    min-height: 32px !important;
}

.sg-register-form .sg-auth-input:has(.sg-region-cascade) > .sg-region-cascade {
    grid-column: 1 / -1 !important;
}

.sg-register-form .sg-region-cascade {
    gap: 6px !important;
}

.sg-register-form .sg-region-cascade-row {
    gap: 6px !important;
    grid-template-columns: 88px minmax(0, 1fr) !important;
}

.sg-register-form .sg-region-cascade-row > span {
    color: #12312f !important;
    font-size: .74rem !important;
    font-weight: 750 !important;
    line-height: 1.1 !important;
    text-align: left !important;
}

.sg-register-form .sg-region-cascade select {
    min-height: 32px !important;
    padding-left: 32px !important;
}

.sg-register-contract {
    align-items: center !important;
    display: flex !important;
    gap: 9px !important;
    margin: 0 !important;
    min-height: 36px !important;
    padding: 8px 10px !important;
}

.sg-register-contract input {
    flex: 0 0 auto;
    margin: 0 !important;
}

.sg-register-form .btn {
    min-height: 40px !important;
}

@media (max-width: 575.98px) {
    .sg-register-form .sg-auth-input,
    .sg-work-apply-form .sg-auth-input {
        --sg-auth-label-width: 112px;
        column-gap: 5px !important;
    }

    .sg-register-grid-2 .sg-auth-input,
    .sg-work-form-grid .sg-auth-input,
    .sg-work-courier-grid .sg-auth-input {
        --sg-auth-label-width: 74px;
    }

    .sg-work-extra-business .sg-auth-input,
    .sg-work-message.sg-auth-input {
        --sg-auth-label-width: 74px;
    }

    .sg-login-clean-form .sg-auth-input,
    .sg-panel-login-form .sg-auth-input {
        --sg-auth-label-width: 66px;
    }

    .sg-forgot-form .sg-auth-input {
        --sg-auth-label-width: 98px;
    }

    .sg-register-form .sg-auth-input,
    .sg-register-grid-2 .sg-auth-input {
        --sg-auth-label-width: 74px !important;
    }

    .sg-register-form .sg-region-cascade-row {
        grid-template-columns: 74px minmax(0, 1fr) !important;
    }

    .sg-login-clean-form .sg-auth-input > span {
        font-size: .7rem !important;
    }

    .sg-panel-login-form .sg-auth-input > span {
        font-size: .7rem !important;
    }

    .sg-forgot-form .sg-auth-input > span {
        font-size: .7rem !important;
    }

    .sg-register-form .sg-auth-input > span {
        font-size: .7rem !important;
    }

    .sg-work-apply-form .sg-auth-input > span {
        font-size: .7rem !important;
    }

    .sg-login-clean-form .sg-auth-input > i,
    .sg-panel-login-form .sg-auth-input > i,
    .sg-forgot-form .sg-auth-input > i,
    .sg-register-form .sg-auth-input > i,
    .sg-work-apply-form .sg-auth-input > i {
        left: 10px !important;
    }
}

/* Final Bootstrap-compatible panel dropdown guard. */
.sg-bootstrap-panel-nav {
    overflow: visible;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group {
    position: relative;
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle {
    align-items: center;
    display: inline-flex;
    min-height: 30px !important;
    gap: 4px !important;
    padding: 6px 7px !important;
    border: 1px solid transparent;
    border-radius: 6px !important;
    color: #334155;
    background: transparent;
    cursor: pointer;
    font-size: .66rem !important;
    font-weight: 780 !important;
    line-height: 1;
    letter-spacing: 0 !important;
    white-space: nowrap;
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle::after {
    display: none !important;
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle > i:first-child {
    font-size: .78rem !important;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.is-active > .sg-panel-nav-toggle,
.sg-bootstrap-panel-nav .sg-panel-nav-group.show > .sg-panel-nav-toggle,
.sg-bootstrap-panel-nav .sg-panel-nav-toggle.show,
.sg-bootstrap-panel-nav .sg-panel-nav-toggle:hover {
    color: #fff;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

.sg-bootstrap-panel-nav .sg-panel-dropdown {
    display: none !important;
    min-width: 218px !important;
    padding: 5px !important;
    z-index: 140;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.show {
    z-index: 120;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.show > .sg-panel-dropdown,
.sg-bootstrap-panel-nav .sg-panel-dropdown.show {
    display: grid !important;
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: 0 !important;
}

.sg-bootstrap-panel-nav .sg-panel-nav-group.show .sg-panel-nav-caret {
    transform: rotate(180deg);
}

.sg-bootstrap-panel-nav .sg-panel-nav-toggle.show .sg-panel-nav-caret {
    transform: rotate(180deg);
}

.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item {
    min-height: 30px !important;
    gap: 5px !important;
    padding: 6px 7px !important;
    border-radius: 6px !important;
    color: var(--sg-text);
    font-size: .68rem !important;
    font-weight: 760 !important;
    letter-spacing: 0 !important;
}

.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item i {
    font-size: .78rem !important;
}

.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item:hover,
.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item.is-active,
.sg-bootstrap-panel-nav .sg-panel-dropdown .dropdown-item.active {
    color: #fff !important;
    border-color: var(--sg-primary);
    background: var(--sg-primary);
}

@media (max-width: 767.98px) {
    .sg-bootstrap-panel-nav {
        overflow-x: auto !important;
        overflow-y: visible !important;
        scrollbar-width: none;
    }

    .sg-bootstrap-panel-nav::-webkit-scrollbar {
        display: none;
    }

    .sg-bootstrap-panel-nav .sg-panel-nav-group.show > .sg-panel-dropdown,
    .sg-bootstrap-panel-nav .sg-panel-dropdown.show {
        position: fixed !important;
        top: 112px !important;
        right: 8px !important;
        left: 8px !important;
        max-height: min(62vh, 420px);
        overflow-y: auto;
    }
}


/* Final homepage Bootstrap theme override. */
.sg-bs-home :is(.sg-main-shell, .sg-home-shell, .sg-home-visitor-stack) {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home :is(.sg-home-head, .sg-home-block.card, .sg-store.card, .sg-product.card, .sg-category-circle) {
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    background: var(--bs-body-bg) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
}

.sg-bs-home .sg-home-block.card {
    padding: 1rem !important;
}

.sg-bs-home .sg-home-block-title {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-block-title h2 {
    display: none !important;
}

.sg-bs-home .sg-promo-slider.carousel {
    display: block !important;
    overflow: hidden !important;
    gap: 0 !important;
}

.sg-bs-home .sg-promo-slider .carousel-item {
    min-width: 100% !important;
}

.sg-bs-home .sg-promo-slide {
    min-width: 0 !important;
    width: 100% !important;
    border-radius: var(--bs-border-radius-lg) !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid,
.sg-bs-home [data-home-carousel] {
    display: grid !important;
    grid-auto-flow: column !important;
    gap: .85rem !important;
    overflow-x: auto !important;
}

.sg-bs-home .sg-store-grid,
.sg-bs-home .sg-bestseller-grid {
    grid-auto-columns: minmax(230px, 270px) !important;
}

.sg-bs-home .sg-category-circles[data-home-carousel] {
    grid-auto-columns: minmax(150px, 180px) !important;
}

.sg-bs-home :is(.sg-store.card, .sg-product.card) {
    color: var(--bs-body-color) !important;
    text-decoration: none !important;
}
.sg-bs-home .card {
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.sg-bs-home a.card:hover,
.sg-bs-home button.card:hover,
.sg-bs-home a.card:focus-visible,
.sg-bs-home button.card:focus-visible {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 .5rem 1.25rem rgba(15, 23, 42, .12) !important;
    transform: translateY(-2px);
}

.sg-bs-home button.card {
    background: var(--bs-card-bg);
    color: var(--bs-body-color);
}

.sg-bs-home .nav-pills {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: .25rem;
    scrollbar-width: none;
}

.sg-bs-home .nav-pills::-webkit-scrollbar {
    display: none;
}

.sg-bs-home .nav-pills .nav-link {
    align-items: center;
    display: inline-flex;
    gap: .45rem;
    white-space: nowrap;
}

.sg-bs-home .carousel .ratio-21x9 {
    --bs-aspect-ratio: 56.25%;
}

.sg-bs-home .input-group > .form-control {
    min-width: 0;
}

.sg-bs-home .sg-home-category-strip {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

@media (min-width: 992px) {
    .sg-bs-home .carousel .ratio-21x9 {
        --bs-aspect-ratio: 26%;
        max-height: 260px;
    }
}

@media (max-width: 767.98px) {
    .sg-bs-home .sg-home-category-strip {
        grid-auto-columns: minmax(132px, 42vw);
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-template-rows: repeat(2, minmax(0, 1fr));
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        padding-bottom: .35rem;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .sg-bs-home .sg-home-category-strip::-webkit-scrollbar {
        display: none;
    }

    .sg-bs-home .sg-home-category-strip > div {
        scroll-snap-align: start;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .sg-bs-home .sg-home-category-strip {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .sg-bs-home {
        padding-top: 1rem !important;
        overflow-x: hidden;
    }

    .sg-bs-home > .container {
        max-width: 100% !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    .sg-bs-home > .container > .row {
        --bs-gutter-x: 2px;
        --bs-gutter-y: 2px;
        margin-left: 0;
        margin-right: 0;
    }

    .sg-bs-home > .container > .row > [class*="col"] {
        padding-left: 1px;
        padding-right: 1px;
    }

    .sg-bs-home .card {
        max-width: 100%;
        border-radius: 2px !important;
    }

    .sg-bs-home .card .card-body {
        padding-left: .45rem !important;
        padding-right: .45rem !important;
    }

    .sg-bs-home .row:not(.g-0) {
        --bs-gutter-x: 2px;
        --bs-gutter-y: 2px;
    }

    :is(.sg-bs-home, .sg-nearby-page) :is(.btn, .nav-link, .input-group-text, .form-control) {
        min-width: 0;
    }

    :is(.sg-bs-home, .sg-nearby-page) .input-group.input-group-lg > .input-group-text {
        padding-left: .45rem;
        padding-right: .45rem;
    }

    :is(.sg-bs-home, .sg-nearby-page) .input-group.input-group-lg > .form-control {
        font-size: .86rem;
        padding-left: .45rem;
        padding-right: .35rem;
    }

    :is(.sg-bs-home, .sg-nearby-page) .input-group.input-group-lg > .btn {
        flex: 0 0 auto;
        font-size: .85rem;
        padding-left: .55rem;
        padding-right: .55rem;
    }

    .sg-bs-home .d-flex,
    .sg-bs-home .row,
    .sg-bs-home .card,
    .sg-bs-home .card-body {
        min-width: 0;
    }

    .sg-bs-home .display-6 {
        font-size: 1.65rem;
    }

    :is(.sg-bs-home, .sg-nearby-page) .input-group.input-group-lg {
        font-size: .95rem;
    }

    :is(.sg-bs-home, .sg-nearby-page) .input-group.input-group-lg .btn {
        padding-left: .8rem;
        padding-right: .8rem;
    }
}

/* Mobile homepage guest actions live in the page, not in the header. */
.sg-bs-home .sg-home-mobile-actions {
    display: none !important;
}

@media (max-width: 767.98px) {
body:has(.sg-home) .sg-header .sg-nav-actions.is-guest .sg-nav-nearby {
    display: none !important;
}

/* Homepage search suggestions must stay above campaign cards. */
.sg-bs-home .row:has(form[data-smart-search]),
.sg-bs-home .col-12:has(form[data-smart-search]),
.sg-bs-home .card:has(form[data-smart-search]),
.sg-bs-home .card-body:has(form[data-smart-search]),
.sg-bs-home form[data-smart-search] {
    position: relative !important;
    overflow: visible !important;
}

.sg-bs-home .col-12:has(form[data-smart-search]),
.sg-bs-home .card:has(form[data-smart-search]) {
    z-index: 1200 !important;
}

.sg-bs-home form[data-smart-search] {
    z-index: 1210 !important;
}

.sg-bs-home form[data-smart-search] .sg-search-suggestions {
    z-index: 1220 !important;
    top: calc(100% + 6px) !important;
    right: 0 !important;
    left: 0 !important;
}

    body:has(.sg-home) .sg-header .sg-nav-actions.is-guest .sg-nav-login {
        display: none !important;
    }

    .sg-bs-home .sg-home-mobile-actions {
        display: grid !important;
        gap: 2px !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
    }

    .sg-bs-home .sg-home-mobile-actions .btn {
        align-items: center !important;
        border-radius: 2px !important;
        display: inline-flex !important;
        font-size: .82rem !important;
        font-weight: 800 !important;
        gap: .35rem !important;
        justify-content: center !important;
        min-height: 38px !important;
        min-width: 0 !important;
        padding: .45rem .35rem !important;
        white-space: nowrap !important;
    }

    .sg-bs-home .sg-home-mobile-actions .sg-home-location-pill {
        --bs-btn-bg: #ffffff;
        --bs-btn-border-color: #e5e2e1;
        --bs-btn-color: #202124;
        --bs-btn-hover-bg: #f8fafc;
        --bs-btn-hover-border-color: #d8d4d2;
        --bs-btn-hover-color: #202124;
        font-weight: 600 !important;
        justify-content: flex-start !important;
        padding-left: .45rem !important;
        padding-right: .35rem !important;
    }

    .sg-bs-home .sg-home-mobile-actions .sg-home-location-pill span {
        display: block !important;
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .sg-bs-home .sg-home-mobile-actions .sg-home-location-pill .bi-geo-alt-fill {
        color: #f9b115 !important;
        flex: 0 0 auto !important;
    }

    .sg-bs-home .sg-home-mobile-actions .sg-home-location-pill .bi-chevron-down {
        color: #f59e0b !important;
        flex: 0 0 auto !important;
        font-size: .72rem !important;
        margin-left: auto !important;
    }

    .sg-bs-home .sg-home-mobile-actions .btn-outline-success {
        --bs-btn-color: #0f766e;
        --bs-btn-border-color: #99f6e4;
        --bs-btn-bg: #f0fdfa;
        --bs-btn-hover-bg: #0f766e;
        --bs-btn-hover-border-color: #0f766e;
        --bs-btn-hover-color: #fff;
    }

    .sg-bs-home .sg-home-mobile-actions .btn-warning {
        --bs-btn-bg: #f97316;
        --bs-btn-border-color: #f97316;
        --bs-btn-color: #fff;
        --bs-btn-hover-bg: #ea580c;
        --bs-btn-hover-border-color: #ea580c;
        --bs-btn-hover-color: #fff;
        box-shadow: 0 .35rem .8rem rgba(249, 115, 22, .18) !important;
        flex: 0 0 auto !important;
        padding-left: .65rem !important;
        padding-right: .65rem !important;
    }
}

/* Home campaign list: compact single-row Bootstrap cards instead of a page-sized carousel. */
.sg-bs-home .sg-home-section-heading {
    align-items: center !important;
    background: linear-gradient(90deg, #fff7ed, #f0fdfa) !important;
    border: 1px solid #fed7aa !important;
    border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) 0 0 !important;
    border-width: 0 0 1px !important;
    color: var(--bs-body-color) !important;
    display: flex !important;
    gap: .55rem !important;
    margin: -1rem -1rem .75rem !important;
    min-height: 46px !important;
    padding: .55rem .85rem !important;
    width: calc(100% + 2rem) !important;
}

.sg-bs-home .sg-home-section-heading > span {
    align-items: center !important;
    background: #f97316 !important;
    border-radius: var(--bs-border-radius) !important;
    color: #fff !important;
    display: inline-flex !important;
    height: 28px !important;
    justify-content: center !important;
    width: 28px !important;
}

.sg-bs-home .sg-home-section-heading strong {
    font-size: .95rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.sg-bs-home .sg-home-section-heading-action {
    justify-content: space-between !important;
}

.sg-bs-home .sg-home-bestseller-products-card .sg-home-section-heading-action {
    justify-content: flex-start !important;
}

.sg-bs-home .sg-home-bestseller-products-card .sg-home-section-heading-action .btn {
    margin-left: auto !important;
}

.sg-bs-home .sg-home-section-heading-action > span {
    flex: 0 0 28px !important;
}

.sg-bs-home .sg-home-section-heading-action strong {
    flex: 0 0 auto !important;
}

.sg-bs-home .sg-home-section-title-stack {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    gap: .12rem !important;
    line-height: 1.05 !important;
    min-width: 0 !important;
}

.sg-bs-home .sg-home-section-title-stack strong {
    line-height: 1 !important;
}

.sg-bs-home .sg-home-section-note {
    display: block !important;
    font-size: .58rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.sg-bs-home .sg-home-section-heading-action .btn {
    --bs-btn-color: #9a3412;
    --bs-btn-border-color: #fdba74;
    --bs-btn-hover-bg: #f97316;
    --bs-btn-hover-border-color: #f97316;
    --bs-btn-hover-color: #fff;
    align-items: center !important;
    display: inline-flex !important;
    gap: .35rem !important;
    white-space: nowrap !important;
}

.sg-bs-home .sg-home-promo-list-card {
    overflow: hidden !important;
}

.sg-bs-home .sg-promo-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: .5rem !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 1px !important;
    scrollbar-width: none !important;
}

.sg-bs-home .sg-promo-list::-webkit-scrollbar {
    display: none !important;
}

.sg-bs-home .sg-promo-list-item {
    border-radius: var(--bs-border-radius) !important;
    flex: 0 0 min(320px, 82vw) !important;
    height: auto !important;
    min-width: 0 !important;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease !important;
}

.sg-bs-home .sg-promo-list-item:hover,
.sg-bs-home .sg-promo-list-item:focus-visible {
    border-color: rgba(var(--bs-primary-rgb), .35) !important;
    box-shadow: var(--bs-box-shadow-sm) !important;
    transform: translateY(-1px) !important;
}

.sg-bs-home .sg-promo-list-text {
    display: -webkit-box !important;
    line-clamp: 2 !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

@media (min-width: 992px) {
    .sg-bs-home .sg-promo-list {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        overflow: visible !important;
    }

    .sg-bs-home .sg-promo-list-item {
        flex: initial !important;
        height: 100% !important;
        width: 100% !important;
    }
}

@media (max-width: 575.98px) {
    .sg-bs-home .sg-home-section-heading {
        border-radius: 2px 2px 0 0 !important;
        margin: -2px -2px 2px !important;
        min-height: 40px !important;
        padding: .4rem .45rem !important;
        width: calc(100% + 4px) !important;
    }

    .sg-bs-home .sg-home-section-heading > span {
        height: 26px !important;
        width: 26px !important;
    }

    .sg-bs-home .sg-home-section-heading-action {
        gap: .4rem !important;
    }

    .sg-bs-home .sg-home-section-heading-action .btn {
        padding: .25rem .4rem !important;
    }

    .sg-bs-home .sg-home-promo-list-card .card-body {
        padding: 2px !important;
    }

    .sg-bs-home .sg-promo-list {
        gap: 2px !important;
    }

    .sg-bs-home .sg-promo-list-item {
        border-radius: 2px !important;
        flex-basis: min(290px, 86vw) !important;
        height: auto !important;
    }

}

/* Home categories: one mobile row, finger-scrollable, with hidden scrollbar. */
.sg-bs-home .sg-home-category-tabs-shell {
    background: var(--bs-body-bg) !important;
    border: 1px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius-lg) !important;
    overflow: hidden !important;
}

.sg-bs-home .sg-home-category-tabs {
    align-items: stretch !important;
    background: var(--bs-tertiary-bg) !important;
    border-bottom: 1px solid var(--bs-border-color) !important;
    display: flex !important;
    gap: .25rem !important;
    margin: 0 !important;
    overflow-x: auto !important;
    padding: .4rem .4rem 0 !important;
    scrollbar-width: none !important;
}

.sg-bs-home .sg-home-category-tabs::-webkit-scrollbar {
    display: none !important;
}

.sg-bs-home .sg-home-category-tabs .nav-item {
    flex: 0 0 auto !important;
    min-width: max-content !important;
}

.sg-bs-home .sg-home-category-tabs .nav-link {
    --sg-tab-bg: #ff7a1a;
    --sg-tab-border: #f97316;
    --sg-tab-text: #ffffff;
    --sg-tab-active-bg: #ea580c;
    --sg-tab-active-border: #c2410c;
    border: 1px solid transparent !important;
    border-bottom: 0 !important;
    border-radius: 5px 5px 0 0 !important;
    color: var(--sg-tab-text) !important;
    font-size: .75rem !important;
    margin-bottom: -1px !important;
    padding-bottom: calc(.5rem + 5px) !important;
    padding-top: calc(.5rem + 5px) !important;
    background: var(--sg-tab-bg) !important;
    border-color: var(--sg-tab-border) !important;
    gap: .25rem !important;
    min-width: max-content !important;
    white-space: nowrap !important;
}

.sg-bs-home .nav-pills .nav-link {
    gap: .25rem !important;
}

.sg-bs-home .sg-home-category-tabs .nav-item:nth-child(2n) .nav-link {
    --sg-tab-bg: #2b884d;
    --sg-tab-border: #2a6f43;
    --sg-tab-text: #ffffff;
    --sg-tab-active-bg: #2a9552;
    --sg-tab-active-border: #166534;
}

.sg-bs-home .sg-home-category-tabs .nav-item:nth-child(3n) .nav-link {
    --sg-tab-bg: #f59e0b;
    --sg-tab-border: #d97706;
    --sg-tab-text: #ffffff;
    --sg-tab-active-bg: #b45309;
    --sg-tab-active-border: #92400e;
}

.sg-bs-home .sg-home-category-tabs .nav-item:nth-child(4n) .nav-link {
    --sg-tab-bg: #14b8a6;
    --sg-tab-border: #0d9488;
    --sg-tab-text: #ffffff;
    --sg-tab-active-bg: #0f766e;
    --sg-tab-active-border: #115e59;
}

.sg-bs-home .sg-home-category-tabs .nav-item:nth-child(5n) .nav-link {
    --sg-tab-bg: #ec4899;
    --sg-tab-border: #db2777;
    --sg-tab-text: #ffffff;
    --sg-tab-active-bg: #be185d;
    --sg-tab-active-border: #9d174d;
}

.sg-bs-home .sg-home-category-tabs .nav-item:nth-child(6n) .nav-link {
    --sg-tab-bg: #6366f1;
    --sg-tab-border: #4f46e5;
    --sg-tab-text: #ffffff;
    --sg-tab-active-bg: #4338ca;
    --sg-tab-active-border: #3730a3;
}

.sg-bs-home .sg-home-category-tabs .nav-link.active,
.sg-bs-home .sg-home-category-tabs .nav-link.is-active {
    background: var(--sg-tab-active-bg) !important;
    border-color: var(--sg-tab-active-border) !important;
    color: var(--sg-tab-text) !important;
}

.sg-bs-home .sg-home-category-tabs .nav-link:hover,
.sg-bs-home .sg-home-category-tabs .nav-link:focus-visible {
    background: var(--sg-tab-active-bg) !important;
    border-color: var(--sg-tab-active-border) !important;
    color: var(--sg-tab-text) !important;
}

.sg-bs-home .sg-home-category-tabs .nav-link i,
.sg-bs-home .sg-home-category-tabs .nav-link.active i,
.sg-bs-home .sg-home-category-tabs .nav-link.is-active i,
.sg-bs-home .sg-home-category-tabs .nav-link:hover i,
.sg-bs-home .sg-home-category-tabs .nav-link:focus-visible i {
    color: var(--sg-tab-text) !important;
}

.sg-address-page > .sg-section {
    padding-bottom: .75rem !important;
}

.sg-address-page ~ .sg-footer {
    margin-top: 0 !important;
}

.sg-address-page .sg-address-form.row {
    display: flex !important;
    margin-top: 1rem !important;
}

.sg-address-page .sg-address-field {
    display: grid !important;
    gap: .35rem !important;
    height: 100% !important;
    margin: 0 !important;
    min-width: 0 !important;
}

.sg-address-page .sg-address-field > span {
    color: var(--bs-body-color) !important;
    font-size: .8rem !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
}

.sg-address-page .sg-address-form :is(.form-control, .form-select) {
    width: 100% !important;
}

.sg-address-page .sg-address-form textarea.form-control {
    min-height: 96px !important;
}

.sg-address-page .sg-address-form .sg-region-cascade {
    gap: .4rem !important;
}

.sg-address-page .sg-address-region-field {
    align-content: end !important;
}

.sg-address-page .sg-address-form .sg-region-cascade-row {
    grid-template-columns: 72px minmax(0, 1fr) !important;
}

@media (max-width: 575.98px) {
    .sg-address-page .sg-address-form .sg-region-cascade-row {
        grid-template-columns: 64px minmax(0, 1fr) !important;
    }
}

body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu a.is-active,
body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu a:hover,
body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu button:hover {
    border-color: #fdba74 !important;
    background: #fff7ed !important;
    color: #9a3412 !important;
}

@media (max-width: 767.98px) {
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) {
        padding-bottom: calc(74px + env(safe-area-inset-bottom)) !important;
        overflow-x: hidden !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-header .navbar {
        min-height: 54px !important;
        padding-block: 6px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-header .container,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-section > .container,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-hero > .container {
        max-width: 100% !important;
        padding-right: 8px !important;
        padding-left: 8px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-hero {
        padding: 8px 0 0 !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-hero-card {
        grid-template-columns: 42px minmax(0, 1fr) 36px !important;
        gap: 8px !important;
        align-items: center !important;
        padding: 10px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-avatar {
        width: 42px !important;
        height: 42px !important;
        border-radius: 10px !important;
        font-size: 1rem !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-identity span {
        margin-bottom: 2px !important;
        color: #f97316 !important;
        font-size: .62rem !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-identity h1 {
        overflow: hidden !important;
        font-size: .98rem !important;
        line-height: 1.15 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-identity p {
        overflow: hidden !important;
        margin-top: 3px !important;
        color: #64748b !important;
        font-size: .68rem !important;
        line-height: 1.2 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-logout {
        grid-column: 3 !important;
        grid-row: 1 !important;
        align-self: center !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
        padding-bottom: 0 !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu-toggle,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu-close-tab,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu-backdrop {
        display: none !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu {
        position: static !important;
        inset: auto !important;
        z-index: auto !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 6px !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
        border-width: 1px !important;
        border-radius: 12px !important;
        scrollbar-width: none !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu::-webkit-scrollbar {
        display: none !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu a,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu button {
        flex: 0 0 96px !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas: "icon" "title" !important;
        justify-items: center !important;
        min-height: 62px !important;
        padding: 7px 5px !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        text-align: center !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu a > span {
        width: 28px !important;
        height: 28px !important;
        border-radius: 8px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu a > strong {
        max-width: 86px !important;
        overflow: hidden !important;
        font-size: .68rem !important;
        line-height: 1.12 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-menu a > small {
        display: none !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-main {
        gap: 10px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-clickable-stats,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-clickable-stats a,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-stats article {
        min-height: 86px !important;
        padding: 10px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-clickable-stats a > span {
        font-size: .62rem !important;
        line-height: 1.1 !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-clickable-stats a > strong {
        overflow: hidden !important;
        font-size: .9rem !important;
        line-height: 1.15 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-clickable-stats a > small {
        font-size: .62rem !important;
        line-height: 1.1 !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-panel {
        padding: 10px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-panel-title {
        gap: 2px !important;
        margin-bottom: 8px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-panel-title span {
        font-size: .62rem !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-panel-title h2 {
        font-size: .94rem !important;
        line-height: 1.18 !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-location-card,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-summary {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px !important;
        padding: 10px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-location-card .btn,
    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-summary .sg-icon-button {
        width: 100% !important;
        justify-self: stretch !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-order-list {
        gap: 8px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-order-list a {
        grid-template-columns: 34px minmax(0, 1fr) auto !important;
        gap: 8px !important;
        min-height: 58px !important;
        padding: 9px !important;
    }

    body:not(.sg-mobile-app-bootstrap):has(.sg-account-layout) .sg-account-order-total {
        align-self: center !important;
        padding: 5px 7px !important;
        font-size: .68rem !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 767.98px) {
    body:has(.sg-account-mobile-nav) {
        padding-bottom: 0 !important;
    }

body:has(.sg-account-mobile-nav) .sg-footer {
        margin-bottom: 0 !important;
        padding-bottom: calc(18px + 62px + env(safe-area-inset-bottom)) !important;
    }
}

@media (max-width: 767.98px) {
    body:has(.sg-customer-footerbar) main.sg-page {
        margin-bottom: 0 !important;
        padding-bottom: 10px !important;
    }

    body:has(.sg-customer-footerbar) main.sg-page > .sg-section:last-child,
    body:has(.sg-customer-footerbar) main.sg-page > section:last-child {
        margin-bottom: 0 !important;
        padding-bottom: 10px !important;
    }

    body:has(.sg-customer-footerbar) .sg-footer {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 10px !important;
        padding-bottom: calc(10px + env(safe-area-inset-bottom)) !important;
    }

    body:has(.sg-customer-footerbar) .sg-footer .container {
        padding-bottom: 0 !important;
    }

    body:has(.sg-customer-footerbar) .sg-footer-bottom {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* Customer footerbar: Bootstrap-like responsive bottom nav. */
@media (max-width: 767.98px) {
    .sg-account-mobile-nav.sg-customer-footerbar {
        align-items: stretch !important;
        background: linear-gradient(135deg, #c2410c, #9a3412) !important;
        border: 1px solid rgba(255, 237, 213, .42) !important;
        border-bottom: 0 !important;
        border-radius: 14px 14px 0 0 !important;
        box-shadow: 0 -.55rem 1.25rem rgba(124, 45, 18, .30) !important;
        column-gap: .25rem !important;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        left: max(.25rem, env(safe-area-inset-left)) !important;
        padding: .35rem .35rem calc(.35rem + env(safe-area-inset-bottom)) !important;
        right: max(.25rem, env(safe-area-inset-right)) !important;
        width: auto !important;
        z-index: 1100 !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar :is(a.nav-link, button.nav-link) {
        align-items: center !important;
        border-radius: 10px !important;
        color: rgba(255, 255, 255, .86) !important;
        display: flex !important;
        flex-direction: column !important;
        gap: .12rem !important;
        justify-content: center !important;
        min-height: 48px !important;
        padding: .35rem .1rem !important;
        transition: background-color .15s ease, color .15s ease, transform .15s ease !important;
        width: 100% !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar :is(a.nav-link, button.nav-link) i {
        font-size: 1.05rem !important;
        height: 20px !important;
        width: 20px !important;
        color: currentColor !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar :is(a.nav-link, button.nav-link) span:not(.sg-cart-badge) {
        font-size: clamp(.54rem, 2.65vw, .68rem) !important;
        font-weight: 750 !important;
        letter-spacing: 0 !important;
        line-height: 1.05 !important;
        max-width: 100% !important;
        color: currentColor !important;
        -webkit-text-fill-color: currentColor !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar a.nav-link.is-active {
        background: rgba(255, 255, 255, .96) !important;
        color: #9a3412 !important;
        box-shadow: 0 .25rem .65rem rgba(124, 45, 18, .18) !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar a.nav-link:is(:hover, :focus-visible) {
        background: rgba(255, 255, 255, .18) !important;
        color: #ffffff !important;
        transform: translateY(-1px) !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar form {
        align-self: stretch !important;
        display: flex !important;
        margin: 0 !important;
        min-width: 0 !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar button.nav-link {
        background: rgba(127, 29, 29, .22) !important;
        color: #ffffff !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar button.nav-link:is(:hover, :focus-visible) {
        background: rgba(127, 29, 29, .34) !important;
        color: #ffffff !important;
        transform: translateY(-1px) !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar .sg-cart-badge {
        right: 50% !important;
        top: .18rem !important;
        transform: translateX(15px) !important;
    }
}

.sg-bs-home .sg-home-category-pane {
    background: var(--bs-body-bg) !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: .75rem !important;
}

/* Logged-in home quick cards: keep balance and nearby side by side on mobile. */
.sg-bs-home .sg-mobile-welcome.row {
    display: flex !important;
    overflow: visible !important;
    margin-top: .25rem !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sg-bs-home .sg-mobile-welcome .card {
    min-width: 0 !important;
    border-radius: 6px !important;
}

.sg-bs-home .sg-mobile-welcome .card-body {
    min-width: 0 !important;
    min-height: 40px !important;
}

.sg-bs-home .sg-mobile-welcome small {
    min-width: 0 !important;
    font-size: .74rem !important;
    font-weight: 700 !important;
}

.sg-bs-home .sg-mobile-welcome .sg-home-nearby-quick {
    background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
    border-color: #0f766e !important;
    color: #ffffff !important;
    box-shadow: 0 .35rem .8rem rgba(20, 184, 166, .22) !important;
}

.sg-bs-home .sg-mobile-welcome .sg-home-nearby-quick :is(i, small) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.sg-bs-home .sg-mobile-welcome .sg-home-nearby-quick:hover,
.sg-bs-home .sg-mobile-welcome .sg-home-nearby-quick:focus-visible {
    background: linear-gradient(135deg, #0d665f, #0f9f91) !important;
    border-color: #0d665f !important;
}

.sg-bs-home .sg-mobile-welcome .sg-home-filter-quick {
    background: #ecebeb !important;
    border-color: #d8d4d2 !important;
    color: #30585c !important;
}

.sg-bs-home .sg-mobile-welcome .sg-home-filter-quick i {
    color: #30585c !important;
    font-size: 1rem;
}

.sg-bs-home .sg-home-filter-modal .form-select {
    border-color: #eef0f2 !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .08) !important;
}

.sg-bs-home .sg-home-filter-modal .form-select:focus {
    border-color: #9ca3af !important;
    box-shadow: 0 0 0 .15rem rgba(48, 88, 92, .16) !important;
}

.sg-bs-home .sg-home-filter-modal .modal-content {
    overflow: hidden;
}

.sg-bs-home .sg-home-filter-modal-head {
    background: linear-gradient(90deg, #fff7ed, #f0fdfa);
}

.sg-bs-home .sg-home-filter-modal-icon {
    align-items: center;
    background: #30585c;
    border-radius: .45rem;
    color: #fff;
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.sg-bs-home .sg-modal-close-btn,
.sg-start-order-modal .sg-modal-close-btn,
.sg-home-filter-modal .sg-modal-close-btn {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid #e5e2e1 !important;
    border-radius: 999px !important;
    box-shadow: 0 .35rem .9rem rgba(15, 23, 42, .16) !important;
    color: #334155 !important;
    display: inline-flex !important;
    flex: 0 0 34px !important;
    height: 34px !important;
    justify-content: center !important;
    margin-left: auto !important;
    padding: 0 !important;
    width: 34px !important;
}

.sg-bs-home .sg-modal-close-btn:hover,
.sg-start-order-modal .sg-modal-close-btn:hover,
.sg-home-filter-modal .sg-modal-close-btn:hover {
    background: #f8fafc !important;
    color: #111827 !important;
}

.sg-bs-home .sg-modal-close-btn i,
.sg-start-order-modal .sg-modal-close-btn i,
.sg-home-filter-modal .sg-modal-close-btn i {
    font-size: .95rem !important;
}

.sg-bs-home .sg-home-filter-field {
    background: #f8fafc;
    border: 1px solid #e5e2e1;
    border-radius: .55rem;
    padding: .45rem;
}

.sg-bs-home .sg-home-filter-field .form-label {
    font-weight: 700 !important;
}

.sg-bs-home .sg-home-filter-field .form-select {
    font-size: .75rem !important;
    font-weight: 630 !important;
    min-height: 32px !important;
    padding: 4px 25px 4px 6px !important;
}

.sg-bs-home .sg-home-filter-accordion .accordion-button {
    background: #f8fafc !important;
    color: #202124 !important;
    font-size: .82rem;
    font-weight: 700;
    box-shadow: none !important;
}

.sg-bs-home .sg-home-filter-accordion .accordion-button:not(.collapsed) {
    background: #eef7f1 !important;
    color: #14532d !important;
}

.sg-bs-home .sg-home-filter-accordion .accordion-button:focus {
    border-color: #d8d4d2 !important;
    box-shadow: 0 0 0 .15rem rgba(48, 88, 92, .12) !important;
}

.sg-bs-home .sg-home-filter-location-card {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e5e2e1;
    border-radius: .55rem;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    padding: .75rem;
}

.sg-bs-home .sg-home-filter-location-card div:first-child {
    display: grid;
    gap: .15rem;
    min-width: 0;
}

.sg-bs-home .sg-home-filter-location-card small {
    color: #667085;
    display: block;
    line-height: 1.25;
}

.sg-bs-home .sg-home-filter-map-wrap {
    background: #fff;
    border: 1px solid #e5e2e1;
    border-radius: .55rem;
    padding: .5rem;
}

.sg-bs-home .sg-home-filter-map-wrap [data-filter-map] {
    min-height: 230px;
}

.sg-bs-home .sg-home-filter-modal .modal-content {
    display: flex !important;
    flex-direction: column !important;
    max-height: min(680px, calc(100dvh - 1rem)) !important;
    overflow: hidden !important;
}

.sg-bs-home .sg-home-filter-modal .modal-body {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
}

.sg-bs-home .sg-home-filter-map-wrap[hidden] {
    display: none !important;
}

.sg-bs-home .sg-home-filter-map-wrap:not([hidden]) {
    display: grid !important;
    gap: .35rem !important;
    padding: .4rem !important;
}

.sg-bs-home .sg-home-filter-map-canvas,
.sg-bs-home .sg-home-filter-modal [data-filter-map] {
    aspect-ratio: auto !important;
    height: 210px !important;
    min-height: 210px !important;
    max-height: 210px !important;
    width: 100% !important;
}

.sg-bs-home .sg-home-filter-map-actions {
    align-items: center !important;
    background: #fff !important;
    border-top: 1px solid #e5e2e1 !important;
    display: flex !important;
    gap: .4rem !important;
    justify-content: space-between !important;
    margin-top: .35rem !important;
    padding-top: .35rem !important;
    position: sticky !important;
    bottom: 0 !important;
    z-index: 2 !important;
}

.sg-bs-home .sg-home-filter-map-actions small {
    flex: 1 1 auto !important;
    font-size: .68rem !important;
    line-height: 1.15 !important;
    min-width: 0 !important;
}

.sg-bs-home .sg-home-filter-map-actions .btn {
    flex: 0 0 auto !important;
    font-size: .72rem !important;
    padding: .35rem .5rem !important;
    white-space: nowrap !important;
}

@media (max-width: 575.98px) {
    .sg-bs-home .sg-home-filter-modal .modal-header {
        padding: .65rem .75rem .25rem !important;
    }

    .sg-bs-home .sg-home-filter-modal .modal-footer {
        padding: .25rem .75rem .65rem !important;
    }

    .sg-bs-home .sg-home-filter-modal .modal-body {
        gap: .5rem !important;
    }

    .sg-bs-home .sg-home-filter-location-card {
        align-items: stretch;
        flex-direction: column;
        gap: .5rem;
        padding: .55rem;
    }

    .sg-bs-home .sg-home-filter-location-card .btn {
        flex: 1 1 auto;
    }

    .sg-bs-home .sg-home-filter-map-wrap [data-filter-map] {
        min-height: 220px;
    }

    .sg-bs-home .sg-home-filter-modal .modal-dialog {
        align-items: center !important;
        margin: .35rem auto !important;
        min-height: calc(100% - .7rem) !important;
        width: calc(100% - .5rem) !important;
    }

    .sg-bs-home .sg-home-filter-modal .modal-content {
        max-height: calc(100dvh - .7rem) !important;
    }

    .sg-bs-home .sg-home-filter-modal .modal-header {
        padding: .55rem .65rem .25rem !important;
    }

    .sg-bs-home .sg-home-filter-modal .modal-body {
        gap: .4rem !important;
        padding: .55rem .65rem !important;
    }

    .sg-bs-home .sg-home-filter-modal .modal-footer {
        padding: .25rem .65rem .55rem !important;
    }

    .sg-bs-home .sg-home-filter-map-canvas,
    .sg-bs-home .sg-home-filter-modal [data-filter-map] {
        height: 175px !important;
        min-height: 175px !important;
        max-height: 175px !important;
    }

    .sg-bs-home .sg-home-filter-map-actions {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .sg-bs-home .sg-home-filter-map-actions .btn {
        width: 100% !important;
    }
}

/* Store detail: Bootstrap-aligned customer layout. */
.sg-bs-home .container,
.sg-nearby-page > .container,
.sg-bs-store-detail .container,
.sg-header .navbar > .container {
    width: min(100%, 1140px) !important;
}

.sg-login-choice-page .sg-auth-section {
    min-height: auto !important;
    padding: 14px 0 0 !important;
}

.sg-login-choice-page .container {
    max-width: 1140px !important;
    width: min(100%, 1140px) !important;
}

.sg-login-choice-page .sg-login-choice-shell {
    width: min(940px, 100%) !important;
}

.sg-login-choice-page .sg-login-choice-shell,
.sg-login-choice-page .sg-login-choice-bottom {
    margin-bottom: 0 !important;
}

body:has(.sg-login-choice-page) .sg-footer {
    margin-top: -18px !important;
}

@media (min-width: 992px) {
    .sg-login-choice-page .sg-login-choice-card {
        min-height: 168px !important;
    }
}

.sg-bs-store-detail .sg-store-hero,
.sg-bs-store-detail .sg-store-content-section {
    background: #f8fafc !important;
}

.sg-bs-store-detail .sg-store-shell {
    background: #fff !important;
    border: 0 !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-columns: minmax(210px, 280px) minmax(0, 1fr) !important;
    padding: 0 !important;
}

.sg-bs-store-detail .sg-store-cover {
    min-height: 100% !important;
    position: relative !important;
}

.sg-bs-store-detail .sg-store-cover img {
    border-radius: 0 !important;
    display: block !important;
    height: 100% !important;
    min-height: 190px !important;
    object-fit: cover !important;
    width: 100% !important;
}

.sg-bs-store-detail .sg-store-info {
    justify-content: center !important;
    padding: 1rem !important;
}

.sg-bs-store-detail .sg-kicker,
.sg-bs-store-detail .sg-panel-title > span {
    color: #30585c !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.sg-bs-store-detail .sg-store-info h1 {
    font-size: clamp(1.32rem, 2.35vw, 1.82rem) !important;
    margin-bottom: .35rem !important;
}

.sg-bs-store-detail .sg-store-info p {
    color: #667085 !important;
    font-size: .92rem !important;
    line-height: 1.35 !important;
}

.sg-bs-store-detail .sg-store-badges .badge {
    align-items: center !important;
    display: inline-flex !important;
    font-size: .78rem !important;
    gap: .25rem !important;
}

.sg-bs-store-detail .sg-panel {
    background: #fff !important;
    border: 0 !important;
    border-radius: .5rem !important;
    box-shadow: 0 .25rem .75rem rgba(15, 23, 42, .06) !important;
    padding: .85rem !important;
}

.sg-bs-store-detail .sg-panel-title {
    align-items: flex-start !important;
    border-bottom: 1px solid #eef2f7 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: .1rem !important;
    margin: -.1rem 0 .75rem !important;
    padding-bottom: .55rem !important;
}

.sg-bs-store-detail .sg-panel-title h2 {
    color: #202124 !important;
    font-size: 1rem !important;
    margin: 0 !important;
}

.sg-bs-store-detail .sg-menu-category-nav {
    border: 1px solid #e5e2e1 !important;
    border-radius: .5rem !important;
    display: flex !important;
    gap: .35rem !important;
    margin-bottom: .75rem !important;
    overflow-x: auto !important;
    padding: .35rem !important;
    scrollbar-width: none !important;
}

.sg-bs-store-detail .sg-menu-category-nav::-webkit-scrollbar {
    display: none !important;
}

.sg-bs-store-detail .sg-menu-category-nav a {
    background: #f8fafc !important;
    border: 1px solid #e5e2e1 !important;
    border-radius: .35rem !important;
    color: #30585c !important;
    font-size: .76rem !important;
    font-weight: 650 !important;
    min-height: 32px !important;
    padding: .38rem .6rem !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.sg-bs-store-detail .sg-menu-category-nav a:hover {
    border-color: #fc8019 !important;
    box-shadow: 0 .25rem .55rem rgba(252, 128, 25, .14) !important;
}

.sg-bs-store-detail .sg-store-menu-panel {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 .75rem 1.8rem rgba(15, 23, 42, .08) !important;
}

.sg-bs-store-detail .sg-store-menu-panel > .sg-panel-title {
    background: linear-gradient(135deg, #e8f7ee 0%, #fff7ed 100%) !important;
    border: 1px solid #cfe8d8 !important;
    border-left: 4px solid #16a34a !important;
    border-radius: .55rem !important;
    box-shadow: 0 .35rem .9rem rgba(15, 82, 21, .08) !important;
    margin-bottom: .65rem !important;
    padding: .5rem .6rem !important;
}

.sg-bs-store-detail .sg-store-menu-panel > .sg-panel-title span {
    background: #dcfce7 !important;
    color: #166534 !important;
}

.sg-bs-store-detail .sg-store-menu-panel > .sg-panel-title h2 {
    color: #213f42 !important;
}

.sg-bs-store-detail .sg-menu-category-nav {
    background: #eef8f4 !important;
    border: 1px solid #cfe8d8 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75), 0 .35rem .9rem rgba(15, 82, 21, .07) !important;
}

.sg-bs-store-detail .sg-menu-category-nav a {
    background: #ffffff !important;
    border-color: #d7e7df !important;
    color: #30585c !important;
}

.sg-bs-store-detail .sg-menu-category-nav a:hover,
.sg-bs-store-detail .sg-menu-category-nav a:focus {
    background: linear-gradient(135deg, #fc8019, #f59e0b) !important;
    border-color: #fb923c !important;
    color: #ffffff !important;
}

.sg-bs-store-detail .sg-menu-section {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: .65rem !important;
    box-shadow: 0 .35rem .9rem rgba(15, 23, 42, .055) !important;
    margin-bottom: .75rem !important;
    overflow: hidden !important;
}

.sg-bs-store-detail .sg-menu-section summary {
    background: linear-gradient(135deg, #e8f7ee 0%, #fff7ed 100%) !important;
    border-bottom: 1px solid #eadfd8 !important;
    padding: .65rem .75rem !important;
}

.sg-bs-store-detail .sg-menu-section summary small {
    background: #ffffff !important;
    border: 1px solid #fed7aa !important;
    border-radius: 999px !important;
    color: #9a3412 !important;
    font-weight: 650 !important;
    padding: .18rem .45rem !important;
}

.sg-bs-store-detail .sg-menu-category-title strong {
    color: #213f42 !important;
}

.sg-bs-store-detail .sg-menu-list {
    display: grid !important;
    gap: .55rem !important;
    padding: .55rem !important;
}

.sg-bs-store-detail .sg-menu-item {
    background: linear-gradient(135deg, #ffffff 0%, #fffaf5 100%) !important;
    border: 1px solid #e8eceb !important;
    border-radius: .75rem !important;
    display: grid !important;
    grid-template-columns: 132px minmax(0, 1fr) auto !important;
    gap: .75rem !important;
    overflow: hidden !important;
    padding: .65rem !important;
    position: relative !important;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

.sg-bs-store-detail .sg-menu-item::before {
    background: linear-gradient(180deg, #16a34a, #fc8019) !important;
    border-radius: 999px !important;
    bottom: .65rem !important;
    content: "" !important;
    left: .35rem !important;
    opacity: .7 !important;
    position: absolute !important;
    top: .65rem !important;
    width: 3px !important;
}

.sg-bs-store-detail .sg-menu-item-body {
    display: flex !important;
    flex-direction: column !important;
    gap: .45rem !important;
    min-width: 0 !important;
}

.sg-bs-store-detail .sg-menu-item:hover {
    background: #ffffff !important;
    border-color: #fdba74 !important;
    box-shadow: 0 .65rem 1.35rem rgba(15, 23, 42, .09), 0 0 0 1px rgba(252, 128, 25, .08) !important;
    transform: translateY(-1px) !important;
}

.sg-bs-store-detail .sg-menu-item img {
    border-radius: .65rem !important;
    height: 112px !important;
    width: 132px !important;
}

.sg-bs-store-detail .sg-menu-image-button {
    background: transparent !important;
    border: 0 !important;
    border-radius: .65rem !important;
    cursor: pointer !important;
    display: block !important;
    height: 112px !important;
    overflow: hidden !important;
    padding: 0 !important;
    width: 132px !important;
}

.sg-bs-store-detail .sg-menu-image-button:hover,
.sg-bs-store-detail .sg-menu-image-button:focus {
    box-shadow: none !important;
    outline: 0 !important;
}

.sg-bs-store-detail .sg-menu-image-button img {
    height: 100% !important;
    object-fit: cover !important;
    transition: transform .22s ease !important;
    width: 100% !important;
}

.sg-bs-store-detail .sg-menu-image-button:hover img,
.sg-bs-store-detail .sg-menu-image-button:focus img {
    transform: scale(1.12);
}

.sg-bs-store-detail .sg-menu-item-head {
    align-items: flex-start !important;
    flex-direction: row !important;
    gap: .55rem !important;
}

.sg-bs-store-detail .sg-menu-name {
    align-content: flex-start !important;
    align-items: center !important;
    gap: .28rem !important;
    min-width: 0 !important;
}

.sg-bs-store-detail .sg-menu-item h3 {
    color: #172033 !important;
    font-size: .98rem !important;
    font-weight: 850 !important;
    line-height: 1.18 !important;
}

.sg-bs-store-detail .sg-menu-price {
    justify-content: flex-end !important;
    min-width: 0 !important;
    text-align: right !important;
    width: auto !important;
}

.sg-bs-store-detail .sg-menu-price strong {
    background: #fff7ed !important;
    border: 1px solid #fed7aa !important;
    border-radius: .55rem !important;
    color: #9a3412 !important;
    display: inline-flex !important;
    font-size: .98rem !important;
    font-weight: 850 !important;
    padding: .22rem .48rem !important;
}

.sg-bs-store-detail .sg-menu-price del {
    font-size: .82rem !important;
}

.sg-bs-store-detail .sg-menu-price span {
    font-size: .72rem !important;
}

.sg-bs-store-detail .sg-menu-corner-badge {
    align-items: center !important;
    background: linear-gradient(135deg, #16a34a, #f59e0b) !important;
    border: 1px solid rgba(255, 255, 255, .82) !important;
    border-radius: .42rem !important;
    box-shadow: 0 .28rem .65rem rgba(22, 163, 74, .24) !important;
    color: #ffffff !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    font-size: .86rem !important;
    font-weight: 650 !important;
    height: 22px !important;
    line-height: 1 !important;
    justify-content: center !important;
    width: 22px !important;
}

.sg-bs-store-detail .sg-product-badge-row {
    align-items: center !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    gap: 5px !important;
    margin-left: 5px !important;
    vertical-align: middle !important;
}

.sg-bs-store-detail .sg-customizable-badge + .sg-product-badge-row {
    margin-left: 5px !important;
}

.sg-bs-store-detail .sg-product-favorite {
    position: absolute !important;
    right: .55rem !important;
    top: .55rem !important;
    z-index: 5 !important;
}

.sg-bs-store-detail .sg-product-favorite .sg-fav-form {
    margin: 0 !important;
}

.sg-bs-store-detail .sg-product-favorite .sg-fav-button {
    background: rgba(255, 255, 255, .96) !important;
    border-color: rgba(226, 232, 240, .95) !important;
    box-shadow: 0 .25rem .65rem rgba(15, 23, 42, .1) !important;
    height: 30px !important;
    min-height: 30px !important;
    width: 30px !important;
}

.sg-bs-store-detail .sg-menu-corner-badge.is-recommended {
    background: linear-gradient(135deg, #16a34a, #f59e0b) !important;
    box-shadow: 0 .28rem .65rem rgba(22, 163, 74, .24) !important;
}

.sg-bs-store-detail .sg-menu-corner-badge.is-popular {
    background: linear-gradient(135deg, #ef4444, #f97316) !important;
    box-shadow: 0 .28rem .65rem rgba(239, 68, 68, .22) !important;
}

.sg-bs-store-detail .sg-menu-corner-badge.is-new {
    background: linear-gradient(135deg, #0f766e, #22c55e) !important;
    box-shadow: 0 .28rem .65rem rgba(15, 118, 110, .20) !important;
}

.sg-bs-store-detail .sg-menu-flags {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: .28rem !important;
    margin-top: .45rem !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

.sg-bs-store-detail .sg-menu-flags span {
    align-items: center !important;
    border: 1px solid #e5e2e1 !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    flex: 0 1 auto !important;
    font-size: .7rem !important;
    font-weight: 650 !important;
    gap: .18rem !important;
    line-height: 1 !important;
    min-height: 24px !important;
    min-width: 0 !important;
    overflow: hidden !important;
    padding: .24rem .48rem !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sg-bs-store-detail .sg-menu-flags .is-rating {
    background: #fff7ed !important;
    border-color: #fed7aa !important;
    color: #9a3412 !important;
    flex: 0 0 auto !important;
}

.sg-bs-store-detail .sg-menu-flags .is-time {
    background: #ecfeff !important;
    border-color: #a5f3fc !important;
    color: #155e75 !important;
    flex: 0 0 auto !important;
}

.sg-bs-store-detail .sg-menu-flags .is-courier {
    background: #eef8f4 !important;
    border-color: #b7ddd7 !important;
    color: #0f766e !important;
}

.sg-bs-store-detail .sg-menu-flags .is-popular {
    background: #fef2f2 !important;
    border-color: #fecaca !important;
    color: #b91c1c !important;
}

.sg-bs-store-detail .sg-menu-flags .is-recommended {
    background: #f0fdf4 !important;
    border-color: #bbf7d0 !important;
    color: #166534 !important;
}

.sg-bs-store-detail .sg-menu-flags .is-new {
    background: #f5f3ff !important;
    border-color: #ddd6fe !important;
    color: #6d28d9 !important;
}

.sg-bs-store-detail .sg-menu-detail-button {
    align-items: center !important;
    align-self: flex-start !important;
    background: #ffffff !important;
    border-color: #b7ddd7 !important;
    color: #30585c !important;
    display: inline-flex !important;
    font-size: .72rem !important;
    font-weight: 650 !important;
    gap: .25rem !important;
    min-height: 30px !important;
    padding: .24rem .5rem !important;
}

.sg-bs-store-detail .sg-menu-detail-button:hover,
.sg-bs-store-detail .sg-menu-detail-button:focus-visible {
    background: #fff7ed !important;
    border-color: #fc8019 !important;
    box-shadow: 0 .25rem .65rem rgba(252, 128, 25, .16) !important;
    color: #9a3412 !important;
}

.sg-bs-store-detail .sg-product-actions {
    align-content: center !important;
    align-items: center !important;
    display: grid !important;
    gap: .4rem !important;
    justify-items: center !important;
    min-width: 42px !important;
    position: relative !important;
    z-index: 2 !important;
}

.sg-bs-store-detail .sg-product-actions .btn,
.sg-bs-store-detail .sg-product-add-button {
    align-items: center !important;
    background: linear-gradient(135deg, #fc8019, #f59e0b) !important;
    border-color: #fb923c !important;
    border-radius: 999px !important;
    box-shadow: 0 .45rem .9rem rgba(252, 128, 25, .28) !important;
    color: #ffffff !important;
    display: inline-flex !important;
    font-size: .9rem !important;
    height: 36px !important;
    justify-content: center !important;
    min-height: 36px !important;
    min-width: 36px !important;
    padding: 0 .52rem !important;
    touch-action: manipulation !important;
}

.sg-bs-store-detail .sg-product-actions .btn:hover,
.sg-bs-store-detail .sg-product-actions .btn:focus,
.sg-bs-store-detail .sg-product-add-button:hover,
.sg-bs-store-detail .sg-product-add-button:focus {
    background: linear-gradient(135deg, #ea580c, #f97316) !important;
    border-color: #ea580c !important;
    color: #ffffff !important;
}

.sg-store-product-modal[hidden] {
    display: none !important;
}

.sg-store-product-modal {
    z-index: 1260 !important;
}

.sg-store-product-modal .modal-content {
    border: 1px solid #e5e2e1 !important;
}

.sg-store-product-modal .sg-store-product-modal-media .ratio {
    max-height: 360px !important;
}

.sg-store-product-modal .sg-store-product-kicker {
    background: #fff7ed !important;
    border: 1px solid #fed7aa !important;
    color: #9a3412 !important;
}

.sg-store-product-modal .sg-store-product-stats .badge {
    align-items: center !important;
    background: #ecebeb !important;
    color: #30585c !important;
    display: inline-flex !important;
    gap: .25rem !important;
}

.sg-store-product-modal .sg-store-product-desc {
    color: #475569 !important;
    font-size: .92rem !important;
    line-height: 1.55 !important;
    white-space: pre-line !important;
}

.sg-bs-store-detail .sg-contact-card dl > div,
.sg-bs-store-detail .sg-info-row,
.sg-bs-store-detail .sg-hours-list > div {
    border-color: #e5e2e1 !important;
    border-radius: .45rem !important;
}

.sg-bs-store-detail .sg-store-hero > .container > .sg-page-nav {
    display: none !important;
}

.sg-bs-store-detail .sg-store-shell {
    align-items: stretch !important;
    background:
        radial-gradient(circle at 8% 12%, rgba(252, 128, 25, .12), transparent 28%),
        linear-gradient(135deg, #ffffff 0%, #fff8f1 48%, #effaf4 100%) !important;
    border: 1px solid rgba(15, 82, 21, .12) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .09) !important;
    display: grid !important;
    gap: .85rem !important;
    grid-template-columns: minmax(300px, 38%) minmax(0, 1fr) !important;
    overflow: hidden !important;
    padding: .65rem !important;
    position: relative !important;
}

.sg-bs-store-detail .sg-store-cover {
    position: relative !important;
}

.sg-bs-store-detail .sg-store-cover img {
    aspect-ratio: 16 / 10 !important;
    border-radius: .45rem !important;
    height: auto !important;
    max-height: 260px !important;
    min-height: 0 !important;
    object-fit: cover !important;
    width: 100% !important;
}

.sg-bs-store-detail .sg-store-info {
    min-width: 0 !important;
    padding: .15rem .2rem .1rem !important;
}

.sg-bs-store-detail .sg-store-title-row {
    align-items: flex-start !important;
    display: grid !important;
    gap: .65rem !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
}

.sg-bs-store-detail .sg-store-status-line {
    align-items: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .35rem !important;
    margin-bottom: .35rem !important;
}

.sg-bs-store-detail .sg-store-status-line .badge,
.sg-bs-store-detail .sg-store-service-chip,
.sg-bs-store-detail .sg-store-hours-chip {
    align-items: center !important;
    border-radius: .4rem !important;
    display: inline-flex !important;
    font-size: .68rem !important;
    font-weight: 760 !important;
    gap: .22rem !important;
    line-height: 1 !important;
    min-height: 24px !important;
    padding: .28rem .48rem !important;
    white-space: nowrap !important;
}

.sg-bs-store-detail .sg-store-service-chip {
    background: rgba(255, 247, 237, .9) !important;
    border: 1px solid rgba(252, 128, 25, .24) !important;
    color: #9a3412 !important;
}

.sg-bs-store-detail .sg-store-hours-chip {
    background: rgba(255, 255, 255, .78) !important;
    border: 1px solid rgba(48, 88, 92, .14) !important;
    color: #30585c !important;
}

.sg-bs-store-detail .sg-store-info h1 {
    color: #102a2d !important;
    font-size: clamp(1.45rem, 2.4vw, 2.05rem) !important;
    font-weight: 850 !important;
    line-height: 1.04 !important;
    margin: 0 0 .35rem !important;
}

.sg-bs-store-detail .sg-store-info p {
    color: #475569 !important;
    font-size: .92rem !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    max-width: 70ch !important;
}

.sg-bs-store-detail .sg-store-back-floating {
    align-items: center !important;
    border-color: rgba(255, 255, 255, .82) !important;
    border-radius: 0 0 .45rem 0 !important;
    color: #30585c !important;
    display: inline-flex !important;
    height: 30px !important;
    justify-content: center !important;
    padding: 0 !important;
    position: absolute !important;
    left: 0 !important;
    right: auto !important;
    top: 0 !important;
    width: 30px !important;
    z-index: 5 !important;
}

.sg-bs-store-detail .sg-store-back-floating:hover,
.sg-bs-store-detail .sg-store-back-floating:focus {
    background: #fff7ed !important;
    border-color: rgba(252, 128, 25, .55) !important;
    box-shadow: 0 .45rem 1rem rgba(48, 88, 92, .16) !important;
    color: #fc8019 !important;
}

.sg-bs-store-detail .sg-store-title-row .sg-kicker {
    display: none !important;
}

.sg-bs-store-detail .sg-store-owner {
    color: #30585c !important;
    display: block !important;
    font-size: .78rem !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    margin: -.15rem 0 .28rem !important;
}

.sg-bs-store-detail .sg-store-hero-actions {
    align-items: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .38rem !important;
    margin-top: .58rem !important;
}

.sg-bs-store-detail .sg-store-badges {
    gap: .32rem !important;
    margin-top: .55rem !important;
}

.sg-bs-store-detail .sg-store-badges .badge {
    align-items: center !important;
    border-radius: .36rem !important;
    display: inline-flex !important;
    font-size: .68rem !important;
    font-weight: 750 !important;
    gap: .2rem !important;
    min-height: 24px !important;
    padding: .28rem .45rem !important;
}

.sg-bs-store-detail .sg-store-social-btn {
    align-items: center !important;
    border: 1px solid #e5e2e1 !important;
    border-radius: .45rem !important;
    color: #334155 !important;
    display: inline-flex !important;
    font-size: 1rem !important;
    height: 30px !important;
    justify-content: center !important;
    text-decoration: none !important;
    width: 30px !important;
}

.sg-bs-store-detail .sg-store-social-btn:hover,
.sg-bs-store-detail .sg-store-social-btn:focus {
    box-shadow: 0 .35rem .75rem rgba(15, 82, 21, .12) !important;
    transform: translateY(-1px);
}

.sg-bs-store-detail .sg-store-social-btn.is-muted {
    cursor: not-allowed !important;
    filter: grayscale(1);
    opacity: .38 !important;
    pointer-events: none;
}

.sg-bs-store-detail .sg-store-social-btn.is-instagram {
    background: #fff1f2 !important;
    border-color: #fecdd3 !important;
    color: #be123c !important;
}

.sg-bs-store-detail .sg-store-social-btn.is-facebook {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
    color: #1d4ed8 !important;
}

.sg-bs-store-detail .sg-store-social-btn.is-x {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #0f172a !important;
}

.sg-bs-store-detail .sg-store-social-btn.is-phone {
    background: #eef8f4 !important;
    border-color: #b7ddd7 !important;
    color: #0f766e !important;
}

.sg-bs-store-detail .sg-store-social-btn.is-whatsapp {
    background: #ecfdf5 !important;
    border-color: #bbf7d0 !important;
    color: #16a34a !important;
}

.sg-bs-store-detail .sg-store-radius-badge {
    align-items: center !important;
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid rgba(48, 88, 92, .25) !important;
    border-radius: .45rem !important;
    bottom: .5rem !important;
    color: #30585c !important;
    display: inline-flex !important;
    font-size: .74rem !important;
    font-weight: 750 !important;
    gap: .18rem !important;
    left: .5rem !important;
    padding: .26rem .38rem !important;
    position: absolute !important;
    z-index: 4 !important;
}

.sg-bs-store-detail .sg-store-hero-meta {
    display: grid !important;
    gap: .35rem !important;
    grid-template-columns: minmax(110px, .42fr) minmax(0, 1fr) !important;
    margin-top: .58rem !important;
}

.sg-bs-store-detail .sg-store-hero-meta span {
    background: rgba(255, 255, 255, .74) !important;
    border: 1px solid rgba(48, 88, 92, .13) !important;
    border-radius: .4rem !important;
    color: #263241 !important;
    display: flex !important;
    flex-direction: column !important;
    font-size: .86rem !important;
    gap: .1rem !important;
    line-height: 1.2 !important;
    min-width: 0 !important;
    padding: .38rem .48rem !important;
}

.sg-bs-store-detail .sg-store-hero-meta strong {
    color: #30585c !important;
    font-size: .72rem !important;
    font-weight: 750 !important;
    letter-spacing: 0 !important;
}

.sg-bs-store-detail .sg-store-hero-meta-wide {
    grid-column: 1 / -1 !important;
}

.sg-bs-store-detail .sg-contact-card {
    display: none !important;
}

@media (max-width: 767.98px) {
    .sg-bs-store-detail .sg-store-hero,
    .sg-bs-store-detail .sg-store-content-section {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .sg-bs-store-detail .container {
        max-width: 100% !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    .sg-bs-store-detail .sg-store-shell {
        gap: .42rem !important;
        grid-template-columns: 1fr !important;
        padding: .42rem !important;
    }

    .sg-bs-store-detail .sg-store-cover img {
        aspect-ratio: 16 / 9 !important;
        max-height: none !important;
        min-height: 0 !important;
    }

    .sg-bs-store-detail .sg-store-radius-badge {
        bottom: .34rem !important;
        font-size: .68rem !important;
        left: .34rem !important;
        padding: .22rem .32rem !important;
    }

    .sg-bs-store-detail .sg-store-info {
        padding: .12rem .08rem !important;
    }

    .sg-bs-store-detail .sg-store-title-row {
        gap: .35rem !important;
    }

    .sg-bs-store-detail .sg-store-info h1 {
        font-size: 1.02rem !important;
        margin-bottom: .2rem !important;
    }

    .sg-bs-store-detail .sg-store-info p {
        font-size: .76rem !important;
        line-height: 1.25 !important;
    }

    .sg-bs-store-detail .sg-store-info p {
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
    }

    .sg-bs-store-detail .sg-store-owner {
        font-size: .72rem !important;
        margin-bottom: .22rem !important;
    }

    .sg-bs-store-detail .sg-store-hero-actions {
        gap: .22rem !important;
        margin-top: .34rem !important;
    }

    .sg-bs-store-detail .sg-store-social-btn {
        border-radius: .36rem !important;
        font-size: .78rem !important;
        height: 24px !important;
        width: 24px !important;
    }

    .sg-bs-store-detail .sg-store-hero-meta {
        gap: .2rem !important;
        grid-template-columns: minmax(84px, .42fr) minmax(0, 1fr) !important;
        margin-top: .32rem !important;
    }

    .sg-bs-store-detail .sg-store-hero-meta span {
        font-size: .7rem !important;
        padding: .24rem .3rem !important;
    }

    .sg-bs-store-detail .sg-store-hero-meta strong {
        font-size: .6rem !important;
    }

    .sg-bs-store-detail .sg-store-status-line {
        gap: .18rem !important;
        margin-bottom: .22rem !important;
    }

    .sg-bs-store-detail .sg-store-status-line .badge,
    .sg-bs-store-detail .sg-store-service-chip,
    .sg-bs-store-detail .sg-store-hours-chip {
        font-size: .56rem !important;
        min-height: 19px !important;
        padding: .18rem .28rem !important;
    }

    .sg-bs-store-detail .sg-store-badges {
        align-items: center !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: .12rem !important;
        justify-content: start !important;
        margin-top: .34rem !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .sg-bs-store-detail .sg-store-badges .badge {
        flex: 0 1 auto !important;
        font-size: .54rem !important;
        gap: .12rem !important;
        min-height: 18px !important;
        padding: .14rem .2rem !important;
        white-space: nowrap !important;
    }

    .sg-bs-store-detail .sg-store-badges .badge:first-child {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        padding-left: .18rem !important;
        padding-right: .18rem !important;
    }

    .sg-bs-store-detail .sg-panel {
        padding: .65rem !important;
    }

    .sg-bs-store-detail .sg-menu-item {
        grid-template-columns: 108px minmax(0, 1fr) !important;
        grid-template-areas:
            "image body" !important;
        align-items: stretch !important;
        gap: .45rem !important;
        min-width: 0 !important;
        overflow: hidden !important;
        padding: .48rem !important;
        padding-right: 48px !important;
    }

    .sg-bs-store-detail .sg-menu-item img {
        height: 96px !important;
        width: 108px !important;
    }

    .sg-bs-store-detail .sg-menu-image-button {
        grid-area: image !important;
        height: 96px !important;
        width: 108px !important;
    }

    .sg-bs-store-detail .sg-menu-item-body {
        grid-area: body !important;
        min-width: 0 !important;
        overflow: hidden !important;
        padding-right: 0 !important;
    }

    .sg-bs-store-detail .sg-product-actions {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 32px !important;
        position: absolute !important;
        bottom: .5rem !important;
        left: auto !important;
        right: .5rem !important;
        top: auto !important;
        transform: none !important;
        width: auto !important;
        z-index: 4 !important;
    }

    .sg-bs-store-detail .sg-product-actions .btn,
    .sg-bs-store-detail .sg-product-add-button {
        font-size: .82rem !important;
        height: 32px !important;
        min-height: 32px !important;
        min-width: 32px !important;
        width: 32px !important;
        padding: 0 !important;
    }

    .sg-bs-store-detail .sg-product-favorite {
        right: .45rem !important;
        top: .45rem !important;
    }

    .sg-bs-store-detail .sg-product-favorite .sg-fav-button {
        height: 28px !important;
        min-height: 28px !important;
        width: 28px !important;
    }

    .sg-bs-store-detail .sg-menu-detail-button {
        min-height: 32px !important;
        padding: .26rem .5rem !important;
    }

    .sg-bs-store-detail .sg-menu-item-head {
        flex-direction: column !important;
        gap: .25rem !important;
    }

    .sg-bs-store-detail .sg-menu-price {
        justify-content: flex-start !important;
        text-align: left !important;
        width: 100% !important;
    }

    .sg-bs-store-detail .sg-menu-item h3 {
        font-size: .82rem !important;
    }

    .sg-bs-store-detail .sg-menu-price strong {
        font-size: .82rem !important;
        padding: .18rem .36rem !important;
    }

    .sg-bs-store-detail .sg-customizable-badge {
        font-size: .52rem !important;
        min-height: 17px !important;
        padding: .12rem .28rem !important;
    }

    .sg-bs-store-detail .sg-menu-corner-badge {
        height: 18px !important;
        width: 18px !important;
        font-size: .72rem !important;
    }

    .sg-bs-store-detail .sg-product-badge-row,
    .sg-bs-store-detail .sg-customizable-badge + .sg-product-badge-row {
        gap: 3px !important;
        margin-left: 3px !important;
    }

    .sg-bs-store-detail .sg-menu-flags {
        flex-wrap: wrap !important;
        gap: .16rem !important;
        margin-top: .32rem !important;
        overflow: visible !important;
    }

    .sg-bs-store-detail .sg-menu-flags span {
        font-size: .58rem !important;
        min-height: 21px !important;
        padding: .18rem .28rem !important;
    }

    .sg-store-product-modal .modal-dialog {
        margin: .5rem !important;
    }

    .sg-store-product-modal .sg-store-product-modal-media .ratio {
        height: 210px !important;
        max-height: 34vh !important;
        padding-top: 0 !important;
    }

    .sg-store-product-modal .sg-store-product-desc {
        font-size: .86rem !important;
    }
}

@media (min-width: 1200px) {
    .display-6 {
        font-size: 2.0rem;
    }
}

.sg-bulk-options-editor {
    gap: .9rem;
    max-width: 100%;
    overflow: hidden;
}

.sg-bulk-options-panel {
    overflow: visible !important;
}

.sg-bulk-option-groups legend {
    color: #202124;
    float: none;
    width: auto;
}

.sg-bulk-group-check,
.sg-bulk-option-check {
    align-items: center;
    display: flex;
    gap: .45rem;
}

.sg-bulk-group-check {
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.sg-bulk-group-check:hover {
    border-color: #cfd7df !important;
    box-shadow: 0 .25rem .75rem rgba(15, 23, 42, .06);
    transform: translateY(-1px);
}

.sg-bulk-group-check .form-check-input,
.sg-bulk-option-check .form-check-input {
    flex: 0 0 auto;
    margin-left: 0;
}

.sg-bulk-option-check span {
    color: #334155;
}

.sg-bulk-option-row .form-label,
.sg-bulk-option-count .form-label {
    color: #30585c;
    font-weight: 700;
}

.sg-bulk-option-count {
    max-width: none;
}

.sg-bulk-row-number {
    align-items: center;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: .4rem;
    color: #9a3412;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.sg-options-list-panel {
    margin-top: .65rem !important;
}

.sg-options-list-panel .sg-panel-title {
    border-bottom: 1px solid #eef2f7;
    margin-bottom: .7rem;
    padding-bottom: .55rem;
}

.sg-options-list-panel .sg-admin-detail-list article {
    grid-template-columns: minmax(220px, 1fr) minmax(90px, auto) minmax(120px, auto) auto !important;
}

.sg-options-list-panel .sg-admin-status-pill {
    justify-self: start;
}

.sg-option-group-list {
    display: grid;
    gap: .7rem;
}

.sg-option-group-card {
    background: #fff;
    border: 1px solid #e5e2e1;
    border-radius: .6rem;
    overflow: hidden;
}

.sg-option-group-head {
    align-items: center;
    background: #f8fafc;
    border-bottom: 1px solid #eef2f7;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    padding: .65rem .75rem;
}

.sg-option-group-head span {
    color: #667085;
    display: block;
    font-size: .72rem;
    font-weight: 700;
}

.sg-option-group-head h3 {
    color: #202124;
    font-size: .95rem;
    font-weight: 800;
    margin: .12rem 0 0;
}

.sg-option-group-head em {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    color: #9a3412;
    flex: 0 0 auto;
    font-size: .68rem;
    font-style: normal;
    font-weight: 750;
    padding: .25rem .45rem;
}

.sg-option-group-tools {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: .28rem;
    justify-content: flex-end;
}

.sg-option-group-tools form {
    margin: 0;
}

.sg-option-bulk-row {
    transition: border-color .15s ease, box-shadow .15s ease;
}

.sg-option-bulk-row:hover {
    border-color: #d8dee6 !important;
    box-shadow: 0 .25rem .8rem rgba(15, 23, 42, .05);
}

.sg-option-bulk-row .form-label {
    color: #30585c;
}

.sg-option-inline-check {
    align-items: center;
    display: flex;
    gap: .4rem;
    min-height: 31px;
}

.sg-option-inline-check .form-check-input {
    flex: 0 0 auto;
    margin-left: 0;
}

.sg-option-group-tools .sg-icon-button {
    height: 28px;
    min-height: 28px;
    width: 28px;
}

.sg-option-group-toggle i {
    transition: transform .18s ease;
}

.sg-option-group-toggle.is-open i {
    transform: rotate(180deg);
}

.sg-option-chip-list {
    display: grid;
    gap: .4rem;
    padding: .6rem;
}

.sg-option-chip {
    align-items: center;
    background: #ffffff;
    border: 1px solid #eef2f7;
    border-radius: .5rem;
    display: grid;
    gap: .5rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: .48rem .55rem;
}

.sg-option-chip.is-passive {
    background: #fff8f8;
    border-color: #fecaca;
}

.sg-option-chip strong {
    color: #202124;
    display: block;
    font-size: .82rem;
    line-height: 1.15;
}

.sg-option-chip span {
    color: #667085;
    display: block;
    font-size: .68rem;
    margin-top: .12rem;
}

.sg-option-chip .sg-admin-row-actions {
    justify-content: flex-end;
}

.sg-bulk-option-row > strong {
    align-items: center;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: .4rem;
    color: #9a3412;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.sg-bulk-option-row input,
.sg-bulk-option-count select {
    border-color: #e5e2e1;
    border-radius: .4rem;
    min-height: 34px;
}

@media (max-width: 767.98px) {
    .sg-bulk-options-grid,
    .sg-bulk-option-row {
        grid-template-columns: 1fr;
    }

    .sg-bulk-option-count {
        max-width: 100%;
    }

    .sg-options-list-panel .sg-admin-detail-list article {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .sg-option-group-head,
    .sg-option-chip {
        align-items: stretch;
        grid-template-columns: 1fr;
    }

    .sg-option-group-head {
        display: grid;
    }

    .sg-option-group-head em {
        justify-self: start;
    }

    .sg-option-group-tools {
        justify-content: flex-start;
    }

    .sg-option-chip .sg-admin-row-actions {
        justify-content: flex-end;
        width: 100%;
    }

    .sg-bulk-option-row > strong {
        height: 28px;
        width: 28px;
    }

    .sg-bulk-option-check {
        justify-content: flex-start;
    }
}

/* Map layers must stay below footerbar and account/sidebar menus. */
.sg-map-picker,
.sg-map-canvas,
.sg-current-location-map,
.sg-location-map,
.sg-courier-live-map {
    isolation: isolate !important;
    position: relative !important;
    z-index: 0 !important;
}

.sg-map-canvas .leaflet-container,
.sg-current-location-map .leaflet-container,
.sg-location-map .leaflet-container,
.sg-courier-live-map .leaflet-container {
    position: relative !important;
    z-index: 0 !important;
}

.sg-map-canvas :is(.leaflet-pane, .leaflet-top, .leaflet-bottom),
.sg-current-location-map :is(.leaflet-pane, .leaflet-top, .leaflet-bottom),
.sg-location-map :is(.leaflet-pane, .leaflet-top, .leaflet-bottom),
.sg-courier-live-map :is(.leaflet-pane, .leaflet-top, .leaflet-bottom) {
    z-index: 1 !important;
}

body:has(.sg-account-mobile-nav) .sg-account-mobile-nav {
    z-index: 1100 !important;
}

/* Nearby page: Bootstrap-quality visual rhythm without changing filtering logic. */
body:has(.sg-nearby-page) {
    background: #f8fafc !important;
}

body:has(.sg-nearby-page) .sg-page {
    background:
        linear-gradient(180deg, #fff7ed 0, #f8fafc 260px, #f8fafc 100%) !important;
}

.sg-nearby-page {
    padding-top: .75rem !important;
}

.sg-nearby-shell {
    max-width: 1180px !important;
    padding: 1rem !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .96) !important;
    box-shadow: 0 .75rem 1.75rem rgba(15, 23, 42, .08) !important;
}

.sg-nearby-searchbar {
    align-items: center !important;
    gap: .6rem !important;
    margin-bottom: 1rem !important;
}

.sg-nearby-searchbar .sg-page-nav {
    min-height: 42px !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline {
    align-items: center !important;
    border: 1px solid rgba(203, 213, 225, .95) !important;
    border-radius: 999px !important;
    box-shadow: 0 .35rem .9rem rgba(15, 23, 42, .05) !important;
    gap: .35rem !important;
    padding: .35rem !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline > .bi-search {
    color: #c2410c !important;
    margin-left: .55rem !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline input {
    min-height: 40px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    font-size: .9rem !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline .btn {
    min-height: 40px !important;
    border-radius: 999px !important;
    background: #c2410c !important;
    border-color: #c2410c !important;
    font-weight: 800 !important;
}

.sg-nearby-searchbar .sg-nearby-search.is-inline .btn:hover {
    background: #9a3412 !important;
    border-color: #9a3412 !important;
}

.sg-nearby-topbar {
    align-items: stretch !important;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.45fr) !important;
    gap: .75rem !important;
    margin-bottom: .75rem !important;
}

.sg-nearby-title,
.sg-nearby-location {
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .05) !important;
}

.sg-nearby-title {
    align-items: center !important;
    display: flex !important;
    padding: .75rem .9rem !important;
}

.sg-nearby-title h1 {
    color: #111827 !important;
    font-size: clamp(1rem, 2vw, 1.25rem) !important;
    font-weight: 850 !important;
    margin: 0 !important;
}

.sg-nearby-location {
    gap: .75rem !important;
    padding: .75rem !important;
}

.sg-nearby-location > div > i {
    align-items: center !important;
    background: #fff7ed !important;
    border-radius: 10px !important;
    color: #c2410c !important;
    display: inline-flex !important;
    flex: 0 0 36px !important;
    height: 36px !important;
    justify-content: center !important;
    width: 36px !important;
}

.sg-nearby-location strong {
    color: #0f172a !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
}

.sg-nearby-location small {
    color: #64748b !important;
    font-size: .74rem !important;
}

.sg-nearby-location .btn {
    border-radius: 999px !important;
    border-color: #fed7aa !important;
    color: #c2410c !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

.sg-nearby-location .btn:hover {
    background: #fff7ed !important;
    border-color: #fdba74 !important;
}

.sg-nearby-count {
    align-items: center !important;
    border: 1px solid rgba(254, 215, 170, .9) !important;
    border-radius: 999px !important;
    background: #fff7ed !important;
    color: #9a3412 !important;
    display: inline-flex !important;
    justify-content: flex-start !important;
    margin: .25rem 0 1rem !important;
    max-width: 100% !important;
    padding: .45rem .75rem !important;
}

.sg-nearby-count strong {
    color: #9a3412 !important;
    font-size: .82rem !important;
    font-weight: 850 !important;
}

.sg-nearby-page .row > .col > .card {
    border-color: rgba(226, 232, 240, .95) !important;
    border-radius: 10px !important;
    box-shadow: 0 .45rem 1.2rem rgba(15, 23, 42, .07) !important;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease !important;
}

.sg-nearby-page .row > .col > .card:hover,
.sg-nearby-page .row > .col > .card:focus-visible {
    border-color: #fdba74 !important;
    box-shadow: 0 .75rem 1.65rem rgba(194, 65, 12, .14) !important;
    transform: translateY(-2px) !important;
}

.sg-nearby-page .row > .col > .card .card-footer .btn {
    border-radius: 999px !important;
    background: #c2410c !important;
    border-color: #c2410c !important;
    font-weight: 850 !important;
}

@media (max-width: 767.98px) {
    .sg-nearby-page {
        padding-top: .35rem !important;
    }

    .sg-nearby-page > .container {
        padding-right: .35rem !important;
        padding-left: .35rem !important;
    }

    .sg-nearby-shell {
        border-radius: 10px !important;
        padding: .55rem !important;
    }

    .sg-nearby-searchbar,
    .sg-nearby-topbar {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .sg-nearby-searchbar .sg-page-nav {
        justify-self: start !important;
    }

    .sg-nearby-location {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .sg-nearby-location .btn {
        width: 100% !important;
    }

    .sg-nearby-count {
        border-radius: 10px !important;
        width: 100% !important;
    }
}

.sg-bs-home .sg-home-category-strip[data-home-carousel] {
    max-width: 100% !important;
}

@media (min-width: 768px) {
    .sg-bs-home .sg-home-category-strip[data-home-carousel] {
        display: grid !important;
        gap: .75rem !important;
        grid-auto-columns: initial !important;
        grid-auto-flow: row !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
        scrollbar-width: auto !important;
        scroll-snap-type: none !important;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .sg-bs-home .sg-home-category-strip[data-home-carousel] {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 1200px) {
    .sg-bs-home .sg-home-category-strip[data-home-carousel] {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .sg-bs-home .sg-home-category-strip[data-home-carousel] {
        display: grid !important;
        gap: 2px !important;
        grid-auto-columns: minmax(116px, 38vw) !important;
        grid-auto-flow: column !important;
        grid-template-columns: none !important;
        grid-template-rows: 1fr !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        overscroll-behavior-inline: contain !important;
        padding-bottom: 0 !important;
        scroll-behavior: smooth !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .sg-bs-home .sg-home-category-strip[data-home-carousel]::-webkit-scrollbar {
        display: none !important;
    }

    .sg-bs-home .sg-home-category-strip[data-home-carousel] > div {
        min-width: 0 !important;
        scroll-snap-align: start !important;
        width: auto !important;
    }
}

@media (max-width: 575.98px) {
    .sg-bs-home .sg-home-promo-list-card + .sg-home-category-tabs-card,
    .sg-bs-home .sg-home-promo-list-card {
        margin-bottom: 5px !important;
    }

    .sg-bs-home .sg-home-category-tabs-card .card-body {
        padding: 2px !important;
    }

    .sg-bs-home .sg-home-category-tabs-shell {
        border-radius: 2px !important;
    }

    .sg-bs-home .sg-home-category-tabs {
        gap: .25rem !important;
        padding: 2px 2px 0 !important;
    }

    .sg-bs-home .sg-home-category-tabs .nav-item {
        max-width: calc(100vw - 1rem) !important;
    }

    .sg-bs-home .sg-home-category-tabs .nav-link {
        border-radius: 5px 5px 0 0 !important;
        font-size: .74rem !important;
        max-width: calc(100vw - 1rem) !important;
        min-width: max-content !important;
        padding: calc(.4rem + 5px) .5rem !important;
        white-space: nowrap !important;
    }

    .sg-bs-home .sg-home-category-pane {
        border-radius: 2px !important;
        padding: 2px !important;
    }

    .sg-bs-home .sg-home-category-strip[data-home-carousel] {
        grid-auto-columns: minmax(108px, 41vw) !important;
    }

    .sg-bs-home .sg-home-category-strip[data-home-carousel] .card-body {
        padding: .55rem .35rem !important;
    }
}

/* Customer pages: keep the top header in the same dark orange family as the footerbar. */
body:has(.sg-customer-footerbar) .sg-header,
body:has(.sg-customer-footerbar) .sg-header .navbar,
body:has(.sg-customer-footerbar) .sg-header .navbar .container {
    background: linear-gradient(135deg, #c2410c, #9a3412) !important;
    border-color: rgba(255, 237, 213, .22) !important;
    box-shadow: 0 .35rem 1.15rem rgba(154, 52, 18, .18) !important;
}

body:has(.sg-customer-footerbar) .sg-header :is(.navbar-brand, .navbar-brand strong, .navbar-brand span, .navbar-brand i, .sg-logo, .btn, .btn i, .btn span, .btn svg, .btn svg path, .sg-logout-svg, .sg-logout-svg path) {
    color: #fff7ed !important;
    fill: #fff7ed !important;
    -webkit-text-fill-color: #fff7ed !important;
}

body:has(.sg-customer-footerbar) .sg-header :is(.btn-outline-secondary, .sg-icon-button, .btn-light) {
    background: rgba(255, 247, 237, .13) !important;
    border-color: rgba(255, 237, 213, .34) !important;
}

body:has(.sg-customer-footerbar) .sg-header :is(.btn-outline-secondary:hover, .btn-outline-secondary:focus, .sg-icon-button:hover, .sg-icon-button:focus, .btn-light:hover, .btn-light:focus) {
    background: rgba(255, 247, 237, .24) !important;
    border-color: rgba(255, 237, 213, .52) !important;
}

/* Home popular businesses: show two merchants per row on phones without cramping. */
.sg-bs-home .sg-home-popular-stores-grid {
    align-items: stretch !important;
    margin-top: 5px !important;
}

.sg-bs-home .sg-home-popular-stores-card .sg-home-section-heading {
    margin-bottom: 5px !important;
}

.sg-bs-home .sg-home-all-stores-card .sg-home-section-heading {
    margin-bottom: 5px !important;
}

.sg-bs-home .sg-home-all-stores-card .sg-home-section-heading > span {
    background: #ecfdf5 !important;
    color: #047857 !important;
}

.sg-bs-home .sg-home-all-stores-list > .col > .card {
    display: grid !important;
    grid-template-columns: 126px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    align-items: stretch !important;
    border-radius: 10px !important;
    opacity: 1 !important;
}

.sg-bs-home .sg-home-all-stores-list > .col > .card > .ratio {
    grid-row: 1 / span 2 !important;
    width: 126px !important;
    min-height: 116px !important;
    height: 100% !important;
    border-radius: 10px 0 0 10px !important;
}

.sg-bs-home .sg-home-all-stores-list > .col > .card > .ratio::before {
    display: none !important;
}

.sg-bs-home .sg-home-all-stores-list > .col > .card > .ratio img {
    position: static !important;
    filter: none !important;
    opacity: 1 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body {
    min-width: 0 !important;
    padding: .75rem .8rem .35rem !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body h3 {
    color: #111827 !important;
    font-weight: 850 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body p {
    color: #475569 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body .d-flex.flex-wrap.gap-1 {
    gap: .3rem !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body .badge {
    border: 0 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .55) !important;
    font-weight: 800 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body .badge:nth-child(1) {
    background: #e0f2fe !important;
    color: #0369a1 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body .badge:nth-child(2) {
    background: #f5f3ff !important;
    color: #6d28d9 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body .badge:nth-child(3) {
    background: #ecfdf5 !important;
    color: #047857 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body .badge:nth-child(4) {
    background: #fdf2f8 !important;
    color: #be185d !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body small.text-success,
.sg-bs-home .sg-home-all-stores-list .card-body small.text-danger {
    align-self: flex-start !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    padding: .18rem .46rem !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body small.text-success {
    background: #dcfce7 !important;
    color: #166534 !important;
}

.sg-bs-home .sg-home-all-stores-list .card-body small.text-danger {
    background: #fee2e2 !important;
    color: #991b1b !important;
}

.sg-bs-home .sg-home-all-stores-list .card-footer {
    padding: 0 .8rem .75rem !important;
}

.sg-bs-home .sg-home-all-stores-list .card-footer .btn {
    width: auto !important;
    min-width: 112px !important;
    border-radius: 999px !important;
}

@media (max-width: 575.98px) {
    .sg-bs-home .sg-home-all-stores-list > .col > .card {
        grid-template-columns: 112px minmax(0, 1fr) !important;
    }

    .sg-bs-home .sg-home-all-stores-list > .col > .card > .ratio {
        width: 112px !important;
        min-height: 116px !important;
    }

    .sg-bs-home .sg-home-all-stores-list .card-body {
        gap: .35rem !important;
        padding: .55rem .6rem .25rem !important;
    }

    .sg-bs-home .sg-home-all-stores-list .card-body h3 {
        font-size: .86rem !important;
        line-height: 1.18 !important;
    }

    .sg-bs-home .sg-home-all-stores-list .card-body p {
        font-size: .7rem !important;
        line-height: 1.22 !important;
    }

    .sg-bs-home .sg-home-all-stores-list .badge {
        font-size: .6rem !important;
        padding: .2rem .32rem !important;
    }

    .sg-bs-home .sg-home-all-stores-list .card-footer {
        padding: 0 .6rem .55rem !important;
    }

    .sg-bs-home .sg-home-all-stores-list .card-footer .btn {
        min-width: 96px !important;
        padding: .28rem .55rem !important;
    }

    .sg-bs-home .sg-home-popular-stores-card .card-body {
        padding: .55rem !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid {
        --bs-gutter-x: .5rem !important;
        --bs-gutter-y: .5rem !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid > .col {
        min-width: 0 !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid .card {
        border-radius: 10px !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid .ratio {
        --bs-aspect-ratio: 68% !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid .card-body {
        padding: .55rem !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid h3 {
        font-size: .82rem !important;
        line-height: 1.2 !important;
        margin-bottom: .2rem !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid p {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        font-size: .7rem !important;
        line-height: 1.25 !important;
        overflow: hidden !important;
    }

    .sg-bs-home .sg-home-popular-stores-grid .badge {
        font-size: .62rem !important;
        padding: .22rem .36rem !important;
    }
}

/* Home best sellers: compact Bootstrap cards on desktop and mobile. */
:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-products-grid {
    --bs-gutter-x: .45rem !important;
    --bs-gutter-y: .45rem !important;
    align-items: stretch !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-products-grid > .col {
    min-width: 0 !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact {
    border-color: #e5e7eb !important;
    border-radius: 8px !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact:hover,
:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact:focus-visible {
    border-color: #fdba74 !important;
    box-shadow: 0 .45rem 1rem rgba(15, 23, 42, .10) !important;
    transform: translateY(-1px) !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-media {
    --bs-aspect-ratio: 60% !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-media .badge {
    font-size: .56rem !important;
    padding: .16rem .32rem !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .card-body {
    display: flex !important;
    flex-direction: column !important;
    gap: .18rem !important;
    padding: .45rem !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact h3 {
    color: #172033 !important;
    display: -webkit-box !important;
    font-size: .82rem !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    min-height: 1.88em !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact p {
    font-size: .67rem !important;
    line-height: 1.18 !important;
    margin: 0 !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-desc {
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-meta {
    margin-top: .1rem !important;
    row-gap: .18rem !important;
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-meta .badge {
    align-items: center !important;
    background: #ecebeb !important;
    border-color: #ddd8d6 !important;
    color: #334155 !important;
    display: inline-flex !important;
    font-size: .58rem !important;
    font-weight: 600 !important;
    gap: .16rem !important;
    line-height: 1 !important;
    padding: .18rem .30rem !important;
    white-space: nowrap !important;
}

@media (max-width: 575.98px) {
    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-products-grid {
        --bs-gutter-x: .35rem !important;
        --bs-gutter-y: .35rem !important;
    }

    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-media {
        --bs-aspect-ratio: 56% !important;
    }

    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .card-body {
        padding: .38rem !important;
    }

    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact h3 {
        font-size: .76rem !important;
    }

    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact p {
        font-size: .62rem !important;
    }

    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-desc {
        display: none !important;
    }

    :is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-card-compact .sg-home-bestseller-meta .badge {
        font-size: .54rem !important;
        padding: .16rem .24rem !important;
    }
}

:is(.sg-bs-home, body:has(.sg-home-template-top)) .sg-home-bestseller-products-card .sg-home-section-heading > span {
    background: #fff7ed !important;
    color: #c2410c !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-products-grid {
    display: grid !important;
    gap: 8px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-products-grid > .col {
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-card-compact {
    min-height: 100% !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-card-compact .sg-home-bestseller-media {
    --bs-aspect-ratio: 72% !important;
    border-bottom: 1px solid #eef0f2 !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-card-compact h3 {
    font-size: .82rem !important;
    min-height: auto !important;
    -webkit-line-clamp: 2 !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-card-compact .sg-home-bestseller-desc {
    display: -webkit-box !important;
    font-size: .64rem !important;
    -webkit-line-clamp: 1 !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-card-compact .sg-home-bestseller-meta {
    display: flex !important;
    gap: 3px !important;
}

body:has(.sg-home-template-top) .sg-home-bestseller-card-compact .sg-home-bestseller-meta .badge {
    font-size: .56rem !important;
    padding: .18rem .24rem !important;
}

body:has(.sg-home-template-top) .sg-mobile-results-heading {
    align-items: center !important;
    display: flex !important;
    gap: 6px !important;
    margin: 0 0 12px !important;
    min-width: 0 !important;
}

body:has(.sg-home-template-top) .sg-mobile-results-heading strong {
    color: #22272e !important;
    font-size: 1rem !important;
    font-weight: 820 !important;
    line-height: 1.15 !important;
}

body:has(.sg-home-template-top) .sg-mobile-results-heading > i {
    color: #2f3439 !important;
    flex: 0 0 auto !important;
    font-size: .92rem !important;
}

body:has(.sg-home-template-top) .sg-mobile-results-heading .btn {
    margin-left: auto !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-card {
    background: #ffffff !important;
    border: 1px solid #eef0f2 !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .045) !important;
    color: #121212 !important;
    display: block !important;
    margin: 0 !important;
    overflow: hidden !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-card:is(:hover, :focus-visible) {
    border-color: #f0d4c4 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .08) !important;
    outline: 0 !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-card.is-closed {
    opacity: .78 !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-hero {
    background: #f4f5f6 !important;
    height: 160px !important;
    overflow: hidden !important;
    position: relative !important;
    width: calc(100% + 5px) !important;
    max-width: calc(100% + 5px) !important;
    margin-right: -2.5px !important;
    margin-left: -2.5px !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-hero img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-mobile-sponsored-pill {
    align-items: center !important;
    background: rgba(255, 255, 255, .94) !important;
    border-radius: 999px !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .12) !important;
    color: #c2410c !important;
    display: inline-flex !important;
    font-size: .65rem !important;
    font-weight: 760 !important;
    gap: 4px !important;
    line-height: 1 !important;
    padding: 6px 8px !important;
    position: absolute !important;
    right: 10px !important;
    top: 10px !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-info {
    background: #ffffff !important;
    display: grid !important;
    gap: 7px !important;
    padding: 13px 14px 14px !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-info h3 {
    color: #121212 !important;
    font-size: 1rem !important;
    font-weight: 820 !important;
    letter-spacing: 0 !important;
    line-height: 1.18 !important;
    margin: 0 !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-tags {
    align-items: center !important;
    color: #545454 !important;
    display: flex !important;
    font-size: .82rem !important;
    gap: 5px !important;
    line-height: 1.2 !important;
    min-width: 0 !important;
}

body:has(.sg-home-template-top) .sg-mobile-rating {
    align-items: center !important;
    color: #121212 !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    gap: 3px !important;
}

body:has(.sg-home-template-top) .sg-mobile-rating i {
    color: #ff5a00 !important;
    font-size: .84rem !important;
}

body:has(.sg-home-template-top) .sg-mobile-rating strong {
    font-size: .84rem !important;
    font-weight: 820 !important;
}

body:has(.sg-home-template-top) .sg-mobile-dot {
    background: #c7c7c7 !important;
    border-radius: 999px !important;
    flex: 0 0 3px !important;
    height: 3px !important;
    width: 3px !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-desc {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-metrics {
    align-items: center !important;
    color: #121212 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 9px 12px !important;
    font-size: .82rem !important;
    font-weight: 560 !important;
    line-height: 1.2 !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-metrics span,
body:has(.sg-home-template-top) .sg-mobile-hours {
    align-items: center !important;
    display: inline-flex !important;
    gap: 4px !important;
}

body:has(.sg-home-template-top) .sg-mobile-restaurant-metrics i {
    color: #252525 !important;
    font-size: .88rem !important;
}

body:has(.sg-home-template-top) .sg-mobile-hours {
    border-radius: 999px !important;
    font-size: .70rem !important;
    font-weight: 760 !important;
    justify-self: start !important;
    padding: 5px 8px !important;
}

body:has(.sg-home-template-top) .sg-mobile-hours.is-open {
    background: #e8f7ee !important;
    color: #0f6b3b !important;
}

body:has(.sg-home-template-top) .sg-mobile-hours.is-closed {
    background: #fff1f1 !important;
    color: #b42318 !important;
}

@media (max-width: 575.98px) {
    body:has(.sg-home-template-top) .sg-mobile-restaurant-hero {
        height: 150px !important;
    }

    body:has(.sg-home-template-top) .sg-mobile-restaurant-info {
        padding: 12px !important;
    }
}

.sg-home-product-modal.modal {
    z-index: 1260 !important;
}

.sg-home-product-modal .modal-dialog {
    width: min(980px, calc(100% - 1rem)) !important;
}

.sg-home-product-modal .modal-content {
    background: linear-gradient(145deg, #ffffff 0%, #fffaf4 48%, #f4fbf7 100%) !important;
    color: #172033 !important;
    border: 1px solid rgba(251, 146, 60, .22) !important;
}

.sg-home-product-modal .btn[data-home-product-close] {
    border: 1px solid rgba(226, 232, 240, .9) !important;
    border-radius: 999px !important;
    box-shadow: 0 .4rem 1rem rgba(15, 23, 42, .12) !important;
}

.sg-home-product-modal .sg-home-product-modal-media {
    background: linear-gradient(135deg, #fff7ed, #ecfdf5) !important;
}

.sg-home-product-modal [data-home-product-category] {
    color: #14532d !important;
    border-color: #bbf7d0 !important;
    background: #ecfdf5 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

.sg-home-product-modal #sg-home-product-title {
    color: #111827 !important;
    font-weight: 900 !important;
}

.sg-home-product-modal [data-home-product-desc] {
    line-height: 1.45 !important;
}

.sg-home-product-modal .row-cols-2 span.border {
    background: rgba(255, 255, 255, .86) !important;
    border-color: #dbe9df !important;
    border-radius: 10px !important;
    box-shadow: 0 .3rem .8rem rgba(15, 23, 42, .05) !important;
}

.sg-home-product-modal .row-cols-2 i:not(.text-warning) {
    color: #0f766e !important;
}

.sg-home-product-modal .row-cols-2 b {
    color: #111827 !important;
    font-size: .95rem !important;
}

.sg-home-product-modal [data-home-product-tags] .badge,
.sg-home-product-modal [data-home-product-tags] span {
    border: 1px solid #fed7aa !important;
    border-radius: 999px !important;
    background: #fff7ed !important;
    color: #9a3412 !important;
    font-weight: 750 !important;
}

.sg-home-product-modal [data-home-product-price] {
    color: #c2410c !important;
    font-weight: 900 !important;
}

.sg-home-product-modal [data-home-product-url] {
    border-radius: 999px !important;
    background: linear-gradient(135deg, #f97316, #c2410c) !important;
    border-color: #f97316 !important;
    box-shadow: 0 .55rem 1rem rgba(249, 115, 22, .18) !important;
    font-weight: 850 !important;
}

.sg-home-product-modal section.border {
    background: rgba(255, 255, 255, .78) !important;
    border-color: #dbe9df !important;
}

.sg-bs-home .sg-home-category-strip .sg-home-category-image {
    max-width: 88px !important;
    overflow: hidden !important;
    width: min(88px, 78%) !important;
}

.sg-bs-home .sg-home-category-strip .sg-home-category-image img {
    display: block !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: .45rem !important;
    width: 100% !important;
}

.sg-bs-home .sg-home-category-strip > div > .card {
    border-color: transparent !important;
    border-radius: 5px !important;
    box-shadow: 0 .2rem .7rem rgba(15, 23, 42, .05) !important;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease !important;
}

.sg-bs-home .sg-home-category-strip > div > .card:hover,
.sg-bs-home .sg-home-category-strip > div > .card:focus-visible {
    border-color: transparent !important;
    box-shadow: 0 .55rem 1.35rem rgba(15, 23, 42, .14) !important;
    transform: translateY(-1px) !important;
}

.sg-bs-home .sg-home-category-strip > div > .card:hover :is(strong, small),
.sg-bs-home .sg-home-category-strip > div > .card:focus-visible :is(strong, small) {
    color: inherit !important;
}

@media (max-width: 767.98px) {
    .sg-home-product-modal .modal-dialog {
        align-items: end !important;
        margin: .5rem auto !important;
        min-height: calc(100% - 1rem) !important;
    }

    .sg-home-product-modal .modal-content {
        border-radius: 14px !important;
        max-height: calc(100vh - 1rem) !important;
    }

    .sg-home-product-modal .sg-home-product-modal-media .ratio {
        --bs-aspect-ratio: 58% !important;
    }

    .sg-home-product-modal .sg-home-product-modal-body {
        gap: .75rem !important;
        padding: .8rem !important;
    }

    .sg-home-product-modal #sg-home-product-title {
        font-size: 1.05rem !important;
        line-height: 1.22 !important;
        margin-bottom: .25rem !important;
    }

    .sg-home-product-modal [data-home-product-desc] {
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        font-size: .86rem !important;
        overflow: hidden !important;
    }

    .sg-home-product-modal .row-cols-2 {
        --bs-gutter-x: .45rem !important;
        --bs-gutter-y: .45rem !important;
    }

    .sg-home-product-modal .row-cols-2 span.border {
        padding: .45rem !important;
    }

    .sg-home-product-modal .row-cols-2 small {
        font-size: .66rem !important;
    }
}

@media (max-width: 575.98px) {
    .sg-bs-home .sg-home-category-strip .sg-home-category-image {
        max-width: 82px !important;
        width: min(82px, 86%) !important;
    }

    .sg-bs-home .sg-home-category-strip .sg-home-category-image img {
        padding: .38rem !important;
    }
}

/* Nearby page Bootstrap responsive polish. */
.sg-nearby-page .container {
    max-width: 1120px !important;
}

.sg-nearby-page .sg-nearby-shell.card {
    padding: 0 !important;
}

.sg-nearby-page .sg-nearby-searchbar {
    align-items: center !important;
    display: grid !important;
    gap: .65rem !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    margin-bottom: .8rem !important;
}

.sg-nearby-page .sg-nearby-search {
    align-items: center !important;
    background: #f8fafc !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 999px !important;
    display: flex !important;
    gap: .4rem !important;
    padding: .35rem .35rem .35rem .75rem !important;
}

.sg-nearby-page .sg-nearby-search .form-control {
    border: 0 !important;
    box-shadow: none !important;
    min-width: 0 !important;
}

.sg-nearby-page .sg-nearby-topbar {
    align-items: stretch !important;
    display: grid !important;
    gap: .75rem !important;
    grid-template-columns: minmax(0, .8fr) minmax(280px, 1.2fr) !important;
    margin-bottom: .75rem !important;
}

.sg-nearby-page .sg-nearby-title,
.sg-nearby-page .sg-nearby-location {
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .06) !important;
    padding: .85rem !important;
}

.sg-nearby-page .sg-nearby-title h1 {
    color: #111827 !important;
    font-size: clamp(1.08rem, 2.5vw, 1.45rem) !important;
    font-weight: 900 !important;
    margin: 0 !important;
}

.sg-nearby-page .sg-nearby-location {
    align-items: center !important;
    display: flex !important;
    gap: .75rem !important;
    justify-content: space-between !important;
}

.sg-nearby-page .sg-nearby-location > div {
    align-items: center !important;
    display: flex !important;
    gap: .6rem !important;
    min-width: 0 !important;
}

.sg-nearby-page .sg-nearby-location > div > i {
    align-items: center !important;
    background: #e0f2fe !important;
    border-radius: 999px !important;
    color: #0369a1 !important;
    display: inline-flex !important;
    flex: 0 0 34px !important;
    height: 34px !important;
    justify-content: center !important;
    width: 34px !important;
}

.sg-nearby-page .sg-nearby-location strong {
    color: #111827 !important;
    display: block !important;
    font-weight: 900 !important;
}

.sg-nearby-page .sg-nearby-location small {
    color: #64748b !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
}

.sg-nearby-page .sg-nearby-count {
    margin: .25rem 0 .85rem !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card {
    display: flex !important;
    flex-direction: column !important;
    opacity: 1 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    border-color: #e5e7eb !important;
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .07) !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio {
    border-radius: 12px 12px 0 0 !important;
    height: 152px !important;
    min-height: 152px !important;
    width: 100% !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio::before {
    display: none !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio img {
    filter: none !important;
    opacity: 1 !important;
    position: static !important;
}

.sg-nearby-page .sg-nearby-store-list .card-body {
    min-width: 0 !important;
    padding: .85rem .95rem .35rem !important;
}

.sg-nearby-page .sg-nearby-store-list .card-body h3 {
    color: #111827 !important;
    font-weight: 900 !important;
}

.sg-nearby-page .sg-nearby-store-list .card-body p {
    color: #475569 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
}

.sg-nearby-page .sg-nearby-store-list .badge {
    border: 0 !important;
    font-weight: 800 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(1) {
    background: #e0f2fe !important;
    color: #0369a1 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(2) {
    background: #f5f3ff !important;
    color: #6d28d9 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(3) {
    background: #ecfdf5 !important;
    color: #047857 !important;
}

.sg-nearby-page .sg-nearby-store-list .card-footer {
    display: flex !important;
    justify-content: center !important;
    padding: 0 .95rem .85rem !important;
}

.sg-nearby-page .sg-nearby-store-list .card-footer .btn {
    border-radius: 999px !important;
    min-width: 120px !important;
    width: auto !important;
}

@media (max-width: 767.98px) {
    .sg-nearby-page {
        padding-inline: 0 !important;
    }

    .sg-nearby-page .container {
        padding-inline: .35rem !important;
    }

    .sg-nearby-page .sg-nearby-shell.card {
        padding: 0 !important;
    }

    .sg-nearby-page .sg-nearby-searchbar,
    .sg-nearby-page .sg-nearby-topbar {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .sg-nearby-page .sg-nearby-search {
        border-radius: 12px !important;
        flex-wrap: wrap !important;
    }

    .sg-nearby-page .sg-nearby-search .form-control {
        flex: 1 1 150px !important;
    }

    .sg-nearby-page .sg-nearby-location {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .sg-nearby-page .sg-nearby-location .btn {
        width: 100% !important;
    }

    .sg-nearby-page .sg-nearby-store-list > .col > .card {
        grid-template-columns: 112px minmax(0, 1fr) !important;
    }

    .sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio {
        width: 112px !important;
        min-height: 118px !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-body {
        padding: .6rem .65rem .25rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-body h3 {
        font-size: .88rem !important;
        line-height: 1.18 !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-body p {
        font-size: .72rem !important;
        line-height: 1.25 !important;
    }

    .sg-nearby-page .sg-nearby-store-list .badge {
        font-size: .6rem !important;
        padding: .2rem .34rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-footer {
        padding: 0 .65rem .6rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-footer .btn {
        min-width: 98px !important;
        padding: .28rem .55rem !important;
    }
}

/* Homepage final: no blue border/focus colors anywhere in the Bootstrap home area. */
.sg-bs-home :is(.card, .btn, .form-control, .form-select, .input-group-text, .nav-link, a, button):is(:hover, :focus, :focus-visible, :active) {
    border-color: #d1d5db !important;
    outline-color: #d1d5db !important;
}

.sg-bs-home :is(.card, .btn, .form-control, .form-select, .input-group-text, .nav-link, a, button):focus,
.sg-bs-home :is(.card, .btn, .form-control, .form-select, .input-group-text, .nav-link, a, button):focus-visible {
    box-shadow: 0 0 0 .16rem rgba(107, 114, 128, .18) !important;
    outline: 0 !important;
}

.sg-bs-home :is(.btn-outline-primary, .btn-outline-secondary) {
    --bs-btn-color: #374151;
    --bs-btn-border-color: #d1d5db;
    --bs-btn-hover-color: #111827;
    --bs-btn-hover-bg: #f3f4f6;
    --bs-btn-hover-border-color: #9ca3af;
    --bs-btn-focus-shadow-rgb: 107, 114, 128;
    --bs-btn-active-color: #111827;
    --bs-btn-active-bg: #e5e7eb;
    --bs-btn-active-border-color: #9ca3af;
    border-color: #d1d5db !important;
    color: #374151 !important;
}

.sg-bs-home :is(.btn-outline-primary, .btn-outline-secondary):is(:hover, :focus, :focus-visible, :active) {
    background: #f3f4f6 !important;
    border-color: #9ca3af !important;
    color: #111827 !important;
}

.sg-bs-home :is(.btn-outline-primary, .btn-outline-secondary):is(:hover, :focus, :focus-visible, :active) :is(i, span, strong, small) {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

.sg-bs-home a.card:focus-visible,
.sg-bs-home button.card:focus-visible,
.sg-bs-home .sg-promo-list-item:focus-visible,
.sg-bs-home .sg-home-category-strip > div > .card:focus-visible {
    border-color: transparent !important;
    box-shadow: 0 .55rem 1.35rem rgba(15, 23, 42, .14) !important;
}

.sg-bs-home .sg-home-category-tabs .nav-link:is(:hover, :focus, :focus-visible, :active),
.sg-bs-home .sg-home-category-tabs .nav-link:is(.active, .is-active) {
    border-color: rgba(17, 24, 39, .18) !important;
    box-shadow: 0 .35rem .9rem rgba(15, 23, 42, .14) !important;
}

/* Nearby page final polish: Bootstrap card rhythm, compact mobile, no blue UI states. */
body:has(.sg-nearby-page) {
    background: #f8fafc !important;
}

body:has(.sg-nearby-page) .sg-page {
    background:
        radial-gradient(circle at 12% 0%, rgba(249, 115, 22, .12), transparent 28rem),
        radial-gradient(circle at 92% 8%, rgba(20, 184, 166, .12), transparent 26rem),
        #f8fafc !important;
}

.sg-nearby-page {
    padding-bottom: 10px !important;
}

.sg-nearby-page > .container {
    max-width: 1120px !important;
}

.sg-nearby-page .sg-nearby-shell.card {
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    border-radius: 16px !important;
    box-shadow: 0 1rem 2.4rem rgba(15, 23, 42, .10) !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.sg-nearby-page .sg-nearby-searchbar {
    align-items: center !important;
    background: #fff7ed !important;
    border: 1px solid rgba(253, 186, 116, .55) !important;
    border-radius: 14px !important;
    display: grid !important;
    gap: .65rem !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    margin-bottom: .8rem !important;
    padding: .55rem !important;
}

.sg-nearby-page .sg-nearby-searchbar .sg-page-nav :is(a, button) {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid rgba(251, 146, 60, .55) !important;
    border-radius: 999px !important;
    color: #9a3412 !important;
    display: inline-flex !important;
    font-weight: 850 !important;
    min-height: 40px !important;
    padding: .45rem .75rem !important;
}

.sg-nearby-page .sg-nearby-search.is-inline {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .55) !important;
    display: flex !important;
    gap: .45rem !important;
    margin: 0 !important;
    min-width: 0 !important;
    padding: .35rem .35rem .35rem .85rem !important;
}

.sg-nearby-page .sg-nearby-search.is-inline > .bi-search {
    color: #c2410c !important;
    flex: 0 0 auto !important;
}

.sg-nearby-page .sg-nearby-search.is-inline .form-control {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    min-height: 38px !important;
    min-width: 0 !important;
    padding-inline: .2rem !important;
}

.sg-nearby-page .sg-nearby-search.is-inline .btn {
    align-items: center !important;
    background: #c2410c !important;
    border: 1px solid #c2410c !important;
    border-radius: 999px !important;
    box-shadow: 0 .4rem 1rem rgba(194, 65, 12, .20) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-weight: 850 !important;
    gap: .35rem !important;
    min-height: 38px !important;
    padding-inline: .9rem !important;
}

.sg-nearby-page .sg-nearby-topbar {
    align-items: stretch !important;
    display: grid !important;
    gap: .75rem !important;
    grid-template-columns: minmax(230px, .82fr) minmax(0, 1.18fr) !important;
    margin-bottom: .7rem !important;
}

.sg-nearby-page .sg-nearby-title {
    align-items: center !important;
    background: linear-gradient(135deg, #c2410c, #9a3412) !important;
    border: 0 !important;
    border-radius: 14px !important;
    box-shadow: 0 .75rem 1.55rem rgba(154, 52, 18, .18) !important;
    color: #fff7ed !important;
    display: flex !important;
    gap: .75rem !important;
    margin: 0 !important;
    min-width: 0 !important;
    padding: .9rem !important;
}

.sg-nearby-page .sg-nearby-title.is-popular {
    background: linear-gradient(135deg, #fff7ed, #ffedd5) !important;
    border: 1px solid #fed7aa !important;
    box-shadow: 0 .55rem 1.25rem rgba(194, 65, 12, .10) !important;
    color: #431407 !important;
}

.sg-nearby-page .sg-nearby-title.is-popular :is(h1, small, span, i) {
    color: #431407 !important;
    -webkit-text-fill-color: #431407 !important;
}

.sg-nearby-page .sg-nearby-title.is-popular small {
    color: #9a3412 !important;
    -webkit-text-fill-color: #9a3412 !important;
}

.sg-nearby-page .sg-nearby-title.is-popular .sg-nearby-title-icon {
    background: #ffffff !important;
    border-color: #fdba74 !important;
}

.sg-nearby-page .sg-nearby-title.is-popular .sg-nearby-title-icon i {
    color: #ea580c !important;
    -webkit-text-fill-color: #ea580c !important;
}

.sg-nearby-page .sg-nearby-title.is-sponsored small {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: .96 !important;
}

.sg-nearby-page .sg-nearby-title-icon {
    align-items: center !important;
    background: rgba(255, 247, 237, .18) !important;
    border: 1px solid rgba(255, 237, 213, .28) !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
}

.sg-nearby-page .sg-nearby-title-icon i {
    color: #fff7ed !important;
    font-size: 1.25rem !important;
}

.sg-nearby-page .sg-nearby-title h1 {
    color: #fff !important;
    font-size: clamp(1rem, 2.3vw, 1.4rem) !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    margin: 0 !important;
}

.sg-nearby-page .sg-nearby-title small {
    color: rgba(255, 247, 237, .80) !important;
    display: block !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
    margin-top: .2rem !important;
}

.sg-nearby-page .sg-nearby-location {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 14px !important;
    box-shadow: 0 .55rem 1.35rem rgba(15, 23, 42, .07) !important;
    display: flex !important;
    gap: .8rem !important;
    justify-content: space-between !important;
    margin: 0 !important;
    min-width: 0 !important;
    padding: .8rem !important;
}

.sg-nearby-page .sg-nearby-location > div {
    align-items: center !important;
    display: flex !important;
    gap: .65rem !important;
    min-width: 0 !important;
}

.sg-nearby-page .sg-nearby-location > div > i {
    align-items: center !important;
    background: #ecfdf5 !important;
    border: 1px solid #bbf7d0 !important;
    border-radius: 12px !important;
    color: #047857 !important;
    display: inline-flex !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
}

.sg-nearby-page .sg-nearby-location span {
    min-width: 0 !important;
}

.sg-nearby-page .sg-nearby-location strong {
    color: #111827 !important;
    display: block !important;
    font-size: .86rem !important;
    font-weight: 900 !important;
}

.sg-nearby-page .sg-nearby-location small {
    color: #64748b !important;
    display: -webkit-box !important;
    font-size: .76rem !important;
    line-height: 1.28 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.sg-nearby-page .sg-nearby-location .btn {
    background: #f8fafc !important;
    border: 1px solid #d1d5db !important;
    border-radius: 999px !important;
    color: #374151 !important;
    flex: 0 0 auto !important;
    font-weight: 850 !important;
    min-height: 36px !important;
}

.sg-nearby-page .sg-nearby-count,
.sg-nearby-page .sg-nearby-list-heading {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 999px !important;
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .05) !important;
    display: inline-flex !important;
    gap: .5rem !important;
    margin: .15rem 0 .75rem !important;
    padding: .45rem .7rem !important;
    width: auto !important;
}

.sg-nearby-page .sg-nearby-count strong {
    color: #9a3412 !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
}

.sg-nearby-page .sg-nearby-count span {
    color: #64748b !important;
    font-size: .75rem !important;
    font-weight: 750 !important;
}

.sg-nearby-page .sg-nearby-list-heading {
    border-radius: 12px !important;
    margin-top: .15rem !important;
}

.sg-nearby-page .sg-nearby-list-heading span {
    align-items: center !important;
    background: #fef3c7 !important;
    border-radius: 10px !important;
    color: #a16207 !important;
    display: inline-flex !important;
    height: 30px !important;
    justify-content: center !important;
    width: 30px !important;
}

.sg-nearby-page .sg-nearby-list-heading strong {
    color: #111827 !important;
    font-size: .94rem !important;
    font-weight: 900 !important;
}

.sg-nearby-page .sg-empty-cart {
    background: #fff !important;
    border: 1px dashed #fdba74 !important;
    border-radius: 14px !important;
    box-shadow: none !important;
    color: #64748b !important;
    margin-top: .3rem !important;
    padding: 1.25rem !important;
}

.sg-nearby-page .sg-empty-cart strong {
    color: #9a3412 !important;
    display: block !important;
    font-weight: 900 !important;
    margin-bottom: .25rem !important;
}

.sg-nearby-page .sg-nearby-store-list {
    margin-top: .1rem !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card {
    background: #fff !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 14px !important;
    box-shadow: 0 .5rem 1.25rem rgba(15, 23, 42, .07) !important;
    display: flex !important;
    flex-direction: column !important;
    opacity: 1 !important;
    overflow: hidden !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card:hover,
.sg-nearby-page .sg-nearby-store-list > .col > .card:focus-visible {
    border-color: #d1d5db !important;
    box-shadow: 0 .85rem 1.75rem rgba(15, 23, 42, .12) !important;
    transform: translateY(-2px) !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio {
    background: #f3f4f6 !important;
    border-radius: 14px 14px 0 0 !important;
    height: 152px !important;
    min-height: 152px !important;
    width: 100% !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio::before {
    display: none !important;
}

.sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio img {
    filter: none !important;
    opacity: 1 !important;
    position: static !important;
}

.sg-nearby-page .sg-nearby-store-list .card-body {
    min-width: 0 !important;
    padding: .9rem .95rem .35rem !important;
}

.sg-nearby-page .sg-nearby-store-list .card-body h3 {
    color: #111827 !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

.sg-nearby-page .sg-nearby-store-list .card-body p {
    color: #475569 !important;
    display: -webkit-box !important;
    font-size: .8rem !important;
    line-height: 1.3 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge {
    border: 0 !important;
    border-radius: 999px !important;
    font-size: .68rem !important;
    font-weight: 850 !important;
    padding: .32rem .48rem !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(1) {
    background: #e0f2fe !important;
    color: #0369a1 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(2) {
    background: #f5f3ff !important;
    color: #6d28d9 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(3) {
    background: #ecfdf5 !important;
    color: #047857 !important;
}

.sg-nearby-page .sg-nearby-store-list small {
    font-size: .76rem !important;
    font-weight: 750 !important;
}

.sg-nearby-page .sg-nearby-store-list .card-footer {
    align-items: center !important;
    display: flex !important;
    justify-content: center !important;
    padding: 0 .95rem .85rem !important;
}

.sg-nearby-page .sg-nearby-store-list .card-footer .btn {
    background: #c2410c !important;
    border: 1px solid #c2410c !important;
    border-radius: 999px !important;
    box-shadow: 0 .4rem 1rem rgba(194, 65, 12, .18) !important;
    color: #fff !important;
    font-weight: 900 !important;
    min-width: 118px !important;
    width: auto !important;
}

.sg-nearby-page :is(.card, .btn, .form-control, a, button):is(:hover, :focus, :focus-visible, :active) {
    outline: 0 !important;
}

.sg-nearby-page :is(.form-control, .btn, a, button):focus,
.sg-nearby-page :is(.form-control, .btn, a, button):focus-visible {
    box-shadow: 0 0 0 .16rem rgba(107, 114, 128, .16) !important;
}

@media (max-width: 767.98px) {
    .sg-nearby-page {
        padding-top: .5rem !important;
        padding-inline: 0 !important;
    }

    .sg-nearby-page > .container {
        padding-inline: .35rem !important;
    }

    .sg-nearby-page .sg-nearby-shell.card {
        border-radius: 12px !important;
        padding: 0 !important;
    }

    .sg-nearby-page .sg-nearby-searchbar,
    .sg-nearby-page .sg-nearby-topbar {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .sg-nearby-page .sg-nearby-searchbar {
        border-radius: 12px !important;
        gap: .45rem !important;
        padding: .45rem !important;
    }

    .sg-nearby-page .sg-nearby-searchbar .sg-page-nav :is(a, button) {
        min-height: 34px !important;
        padding: .35rem .58rem !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline {
        border-radius: 12px !important;
        flex-wrap: nowrap !important;
        padding: .28rem .28rem .28rem .55rem !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .form-control {
        flex: 1 1 auto !important;
        font-size: .86rem !important;
        min-height: 34px !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .btn {
        min-height: 34px !important;
        padding-inline: .7rem !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .btn span {
        display: none !important;
    }

    .sg-nearby-page .sg-nearby-title,
    .sg-nearby-page .sg-nearby-location {
        border-radius: 12px !important;
        padding: .72rem !important;
    }

    .sg-nearby-page .sg-nearby-title-icon,
    .sg-nearby-page .sg-nearby-location > div > i {
        flex-basis: 36px !important;
        height: 36px !important;
    }

    .sg-nearby-page .sg-nearby-title h1 {
        font-size: 1rem !important;
    }

    .sg-nearby-page .sg-nearby-title small {
        font-size: .7rem !important;
    }

    .sg-nearby-page .sg-nearby-location {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .sg-nearby-page .sg-nearby-location .btn {
        width: 100% !important;
    }

    .sg-nearby-page .sg-nearby-count,
    .sg-nearby-page .sg-nearby-list-heading {
        border-radius: 12px !important;
        justify-content: flex-start !important;
        width: 100% !important;
    }

    .sg-nearby-page .sg-nearby-store-list {
        --bs-gutter-y: .45rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list > .col > .card {
        display: grid !important;
        grid-template-columns: 118px minmax(0, 1fr) !important;
        min-height: 118px !important;
    }

    .sg-nearby-page .sg-nearby-store-list > .col > .card > .ratio {
        min-height: 118px !important;
        width: 118px !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-body {
        padding: .6rem .65rem .2rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-body h3 {
        font-size: .9rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-body p {
        font-size: .72rem !important;
        -webkit-line-clamp: 2 !important;
    }

    .sg-nearby-page .sg-nearby-store-list .badge {
        font-size: .6rem !important;
        padding: .22rem .34rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list small {
        font-size: .68rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-footer {
        padding: 0 .65rem .55rem !important;
    }

    .sg-nearby-page .sg-nearby-store-list .card-footer .btn {
        min-width: 98px !important;
        padding: .28rem .6rem !important;
    }
}

/* Nearby mobile search: slim app-toolbar instead of a bulky stacked block. */
@media (max-width: 767.98px) {
    .sg-nearby-page .sg-nearby-searchbar {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: grid !important;
        gap: .42rem !important;
        grid-template-columns: 36px minmax(0, 1fr) !important;
        margin: 0 0 .5rem !important;
        padding: 0 !important;
    }

    .sg-nearby-page .sg-nearby-searchbar .sg-page-nav {
        align-self: center !important;
        height: 36px !important;
        justify-self: stretch !important;
        min-height: 0 !important;
        width: 36px !important;
    }

    .sg-nearby-page .sg-nearby-searchbar .sg-page-nav .sg-back-link {
        align-items: center !important;
        background: #fff !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 10px !important;
        box-shadow: 0 .25rem .7rem rgba(15, 23, 42, .06) !important;
        color: #374151 !important;
        display: inline-flex !important;
        height: 36px !important;
        justify-content: center !important;
        min-height: 36px !important;
        min-width: 36px !important;
        padding: 0 !important;
        width: 36px !important;
    }

    .sg-nearby-page .sg-nearby-searchbar .sg-page-nav .sg-icon-link-text {
        display: none !important;
    }

    .sg-nearby-page .sg-nearby-searchbar .sg-page-nav i {
        color: #374151 !important;
        font-size: .96rem !important;
        -webkit-text-fill-color: #374151 !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline {
        align-self: center !important;
        background: #fff !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 10px !important;
        box-shadow: 0 .25rem .7rem rgba(15, 23, 42, .06) !important;
        display: grid !important;
        gap: .25rem !important;
        grid-template-columns: 18px minmax(0, 1fr) 34px !important;
        min-height: 36px !important;
        padding: .16rem .16rem .16rem .5rem !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline > .bi-search {
        color: #9ca3af !important;
        font-size: .88rem !important;
        justify-self: center !important;
        margin: 0 !important;
        -webkit-text-fill-color: #9ca3af !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .form-control {
        color: #111827 !important;
        font-size: .8rem !important;
        line-height: 1.1 !important;
        min-height: 32px !important;
        padding: 0 !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .form-control::placeholder {
        color: #9ca3af !important;
        font-size: .78rem !important;
        opacity: 1 !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .btn {
        align-items: center !important;
        background: #c2410c !important;
        border-color: #c2410c !important;
        border-radius: 9px !important;
        box-shadow: none !important;
        display: inline-flex !important;
        height: 32px !important;
        justify-content: center !important;
        min-height: 32px !important;
        min-width: 34px !important;
        padding: 0 !important;
        width: 34px !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .btn span {
        display: none !important;
    }

    .sg-nearby-page .sg-nearby-search.is-inline .btn i {
        color: #fff !important;
        font-size: .88rem !important;
        -webkit-text-fill-color: #fff !important;
    }
}

/* Nearby contrast guard: readable text/icons on every light and dark surface. */
.sg-nearby-page :is(.sg-nearby-shell, .sg-nearby-searchbar, .sg-nearby-location, .sg-nearby-count, .sg-nearby-list-heading, .sg-empty-cart, .sg-nearby-store-list .card, .sg-nearby-store-list .card-body, .sg-nearby-store-list .card-footer) {
    color: #111827 !important;
}

.sg-nearby-page :is(.sg-nearby-shell, .sg-nearby-searchbar, .sg-nearby-location, .sg-nearby-count, .sg-nearby-list-heading, .sg-empty-cart, .sg-nearby-store-list .card) :is(h1, h2, h3, h4, h5, h6, strong, label) {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

.sg-nearby-page :is(.sg-nearby-shell, .sg-nearby-searchbar, .sg-nearby-location, .sg-nearby-count, .sg-nearby-list-heading, .sg-empty-cart, .sg-nearby-store-list .card) :is(p, small, span:not(.badge):not(.btn):not(.sg-nearby-title-icon), input, .form-control):not(.sg-nearby-title *) {
    color: #475569 !important;
    -webkit-text-fill-color: #475569 !important;
}

.sg-nearby-page .sg-nearby-title:not(.is-popular),
.sg-nearby-page .sg-nearby-title:not(.is-popular) :is(h1, h2, h3, h4, h5, h6, strong, span, i) {
    color: #fff7ed !important;
    -webkit-text-fill-color: #fff7ed !important;
}

.sg-nearby-page .sg-nearby-title:not(.is-popular) small {
    color: rgba(255, 247, 237, .86) !important;
    -webkit-text-fill-color: rgba(255, 247, 237, .86) !important;
}

.sg-nearby-page .sg-nearby-title:not(.is-popular) .sg-nearby-title-icon {
    background: rgba(255, 247, 237, .18) !important;
    border-color: rgba(255, 237, 213, .35) !important;
}

.sg-nearby-page .sg-nearby-location > div > i {
    background: #ecfdf5 !important;
    border-color: #bbf7d0 !important;
    color: #047857 !important;
    -webkit-text-fill-color: #047857 !important;
}

.sg-nearby-page .sg-nearby-list-heading span,
.sg-nearby-page .sg-nearby-list-heading span i {
    color: #a16207 !important;
    -webkit-text-fill-color: #a16207 !important;
}

.sg-nearby-page .sg-nearby-search.is-inline > .bi-search {
    color: #9ca3af !important;
    -webkit-text-fill-color: #9ca3af !important;
}

.sg-nearby-page .sg-nearby-search.is-inline input,
.sg-nearby-page .sg-nearby-search.is-inline .form-control {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

.sg-nearby-page .sg-nearby-search.is-inline input::placeholder,
.sg-nearby-page .sg-nearby-search.is-inline .form-control::placeholder {
    color: #9ca3af !important;
    -webkit-text-fill-color: #9ca3af !important;
    opacity: 1 !important;
}

.sg-nearby-page .sg-nearby-searchbar .sg-page-nav .sg-back-link,
.sg-nearby-page .sg-nearby-searchbar .sg-page-nav .sg-back-link :is(i, span) {
    color: #374151 !important;
    -webkit-text-fill-color: #374151 !important;
}

.sg-nearby-page :is(.btn-primary, .sg-nearby-search.is-inline .btn, .sg-nearby-store-list .card-footer .btn),
.sg-nearby-page :is(.btn-primary, .sg-nearby-search.is-inline .btn, .sg-nearby-store-list .card-footer .btn) :is(i, span, strong) {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

.sg-nearby-page .sg-nearby-location .btn,
.sg-nearby-page .sg-nearby-location .btn :is(i, span, strong) {
    color: #374151 !important;
    -webkit-text-fill-color: #374151 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(1),
.sg-nearby-page .sg-nearby-store-list .badge:nth-child(1) :is(i, span) {
    color: #0369a1 !important;
    -webkit-text-fill-color: #0369a1 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(2),
.sg-nearby-page .sg-nearby-store-list .badge:nth-child(2) :is(i, span) {
    color: #6d28d9 !important;
    -webkit-text-fill-color: #6d28d9 !important;
}

.sg-nearby-page .sg-nearby-store-list .badge:nth-child(3),
.sg-nearby-page .sg-nearby-store-list .badge:nth-child(3) :is(i, span) {
    color: #047857 !important;
    -webkit-text-fill-color: #047857 !important;
}

/* Nearby final discipline: same Bootstrap container width as homepage and no white icons on light surfaces. */
.sg-nearby-page > .container,
.sg-nearby-page .container {
    max-width: 100% !important;
}

@media (min-width: 576px) {
    .sg-nearby-page > .container,
    .sg-nearby-page .container {
        max-width: 540px !important;
    }
}

@media (min-width: 768px) {
    .sg-nearby-page > .container,
    .sg-nearby-page .container {
        max-width: 720px !important;
    }
}

@media (min-width: 992px) {
    .sg-nearby-page > .container,
    .sg-nearby-page .container {
        max-width: 960px !important;
    }
}

@media (min-width: 1200px) {
    .sg-nearby-page > .container,
    .sg-nearby-page .container {
        max-width: 1140px !important;
    }
}

@media (min-width: 1400px) {
    .sg-nearby-page > .container,
    .sg-nearby-page .container {
        max-width: 1320px !important;
    }
}

.sg-nearby-page :is(.sg-nearby-searchbar, .sg-nearby-location, .sg-nearby-count, .sg-nearby-list-heading, .sg-empty-cart, .sg-nearby-store-list .card) i {
    color: #374151 !important;
    -webkit-text-fill-color: #374151 !important;
}

.sg-nearby-page .sg-nearby-title i,
.sg-nearby-page .sg-nearby-title-icon i,
.sg-nearby-page :is(.btn-primary, .sg-nearby-search.is-inline .btn, .sg-nearby-store-list .card-footer .btn) i {
    color: #fff7ed !important;
    -webkit-text-fill-color: #fff7ed !important;
}

.sg-nearby-page .sg-nearby-location > div > i {
    color: #047857 !important;
    -webkit-text-fill-color: #047857 !important;
}

.sg-nearby-page .sg-nearby-list-heading span i {
    color: #a16207 !important;
    -webkit-text-fill-color: #a16207 !important;
}

.sg-nearby-page .sg-nearby-search.is-inline > .bi-search {
    color: #9ca3af !important;
    -webkit-text-fill-color: #9ca3af !important;
}

.sg-nearby-page .sg-nearby-store-list .badge .bi-star-fill {
    color: #f59e0b !important;
    -webkit-text-fill-color: #f59e0b !important;
}

/* Global chrome discipline: header/footerbar size must not change by page. */
:root {
    --sg-header-h: 62px;
    --sg-mobile-header-h: 56px;
    --sg-footerbar-h: 64px;
}

.sg-header,
.sg-auth-topbar {
    min-height: var(--sg-header-h) !important;
}

.sg-header .navbar,
.sg-auth-topbar .navbar {
    align-items: center !important;
    min-height: var(--sg-header-h) !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.sg-header .navbar > .container,
.sg-auth-topbar .navbar > .container {
    align-items: center !important;
    min-height: var(--sg-header-h) !important;
}

.sg-header .navbar-brand,
.sg-auth-topbar .navbar-brand {
    align-items: center !important;
    display: inline-flex !important;
    min-height: 40px !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.sg-header :is(.btn, .sg-icon-button),
.sg-auth-topbar :is(.btn, .sg-icon-button) {
    align-items: center !important;
    display: inline-flex !important;
    justify-content: center !important;
    min-height: 36px !important;
}

.sg-account-mobile-nav,
.sg-account-mobile-nav.sg-customer-footerbar {
    min-height: calc(var(--sg-footerbar-h) + env(safe-area-inset-bottom)) !important;
    padding-bottom: env(safe-area-inset-bottom) !important;
}

.sg-account-mobile-nav :is(a, button, .nav-link),
.sg-account-mobile-nav.sg-customer-footerbar :is(a.nav-link, button.nav-link) {
    min-height: 48px !important;
}

body:has(.sg-account-mobile-nav) main.sg-page,
body:has(.sg-customer-footerbar) main.sg-page {
    padding-bottom: 10px !important;
}

/* Static content pages: Bootstrap-like responsive reading layout. */
body:has(.sg-static-page) .sg-page,
body:has(.sg-static-page) .sg-section {
    background:
        radial-gradient(circle at 10% 0%, rgba(48, 88, 92, .10), transparent 24rem),
        linear-gradient(180deg, #f5fbfa 0%, #f8fafc 100%) !important;
}

.sg-static-page .container,
body:has(.sg-static-page) .sg-header .navbar > .container {
    max-width: 1140px !important;
    width: min(100%, 1140px) !important;
}

.sg-static-section {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

.sg-static-page-card {
    border: 1px solid #dbe7e3 !important;
    margin-inline: auto !important;
    max-width: 920px !important;
    overflow: hidden !important;
    width: 100% !important;
}

.sg-static-page-card > .card-body {
    padding: 1rem !important;
}

.sg-static-toolbar {
    border-bottom: 1px solid #e5e7eb !important;
    margin-bottom: .8rem !important;
    padding-bottom: .65rem !important;
}

.sg-static-back {
    border-color: #d7e4df !important;
    border-radius: .45rem !important;
    color: #30585c !important;
    font-size: .78rem !important;
    font-weight: 650 !important;
    min-height: 34px !important;
    padding-inline: .65rem !important;
}

.sg-static-back:hover,
.sg-static-back:focus {
    background: #eef8f4 !important;
    border-color: #9fc7bd !important;
    box-shadow: 0 .35rem .9rem rgba(15, 82, 21, .10) !important;
    color: #095215 !important;
}

.sg-static-brand {
    background: #fff !important;
    border-color: #cfe8e4 !important;
    color: #0f766e !important;
    font-size: .68rem !important;
    font-weight: 650 !important;
}

.sg-static-page-head {
    border-bottom: 1px solid #eef2f7 !important;
    margin-bottom: .9rem !important;
    padding-bottom: .85rem !important;
}

.sg-static-page-head h1 {
    color: #173b35 !important;
    font-size: clamp(1.15rem, 2.2vw, 1.65rem) !important;
    font-weight: 750 !important;
    letter-spacing: 0 !important;
    line-height: 1.18 !important;
    margin: 0 0 .32rem !important;
}

.sg-static-page-head p {
    color: #60746f !important;
    font-size: .88rem !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    max-width: 760px !important;
}

.sg-static-page-content {
    color: #334155 !important;
    font-size: .92rem !important;
    line-height: 1.72 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    word-break: normal !important;
}

.sg-static-page-content p {
    margin-bottom: .8rem !important;
}

.sg-static-page,
.sg-static-section,
.sg-static-page-card,
.sg-static-page-card > .card-body,
.sg-static-page-head,
.sg-static-page-content {
    min-width: 0 !important;
}

body:has(.sg-static-page) {
    overflow-x: hidden !important;
}

@media (min-width: 992px) {
    .sg-static-section {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .sg-static-page-card > .card-body {
        padding: 1.35rem 1.5rem !important;
    }
}

@media (max-width: 767.98px) {
    .sg-static-page .container {
        max-width: 100% !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    .sg-static-section {
        padding-top: 6px !important;
        padding-bottom: 8px !important;
    }

    .sg-static-page-card {
        border-radius: .55rem !important;
        max-width: calc(100vw - 4px) !important;
    }

    .sg-static-page-card > .card-body {
        padding: .72rem !important;
    }

    .sg-static-toolbar {
        margin-bottom: .62rem !important;
        padding-bottom: .52rem !important;
    }

    .sg-static-page-head {
        margin-bottom: .7rem !important;
        padding-bottom: .65rem !important;
    }

    .sg-static-page-head h1 {
        font-size: 1.08rem !important;
        line-height: 1.2 !important;
    }

    .sg-static-page-head p,
    .sg-static-page-content {
        font-size: .84rem !important;
    }

    .sg-static-page-content {
        line-height: 1.62 !important;
    }
}

@media (max-width: 767.98px) {
    .sg-header,
    .sg-auth-topbar {
        min-height: var(--sg-mobile-header-h) !important;
    }

    .sg-header .navbar,
    .sg-auth-topbar .navbar,
    .sg-header .navbar > .container,
    .sg-auth-topbar .navbar > .container {
        min-height: var(--sg-mobile-header-h) !important;
    }

    .sg-header .navbar-brand,
    .sg-auth-topbar .navbar-brand {
        min-height: 36px !important;
    }

    .sg-header :is(.btn, .sg-icon-button),
    .sg-auth-topbar :is(.btn, .sg-icon-button) {
        height: 32px !important;
        min-height: 32px !important;
    }

    .sg-account-mobile-nav,
    .sg-account-mobile-nav.sg-customer-footerbar {
        height: calc(var(--sg-footerbar-h) + env(safe-area-inset-bottom)) !important;
        min-height: calc(var(--sg-footerbar-h) + env(safe-area-inset-bottom)) !important;
        padding-bottom: env(safe-area-inset-bottom) !important;
    }
}

/* Final brand chrome color: keep header and footerbar identical. */
.sg-header,
.sg-header .navbar,
.sg-header .navbar > .container,
body.sg-theme-acik .sg-header,
body.sg-theme-acik:has(.sg-home) .sg-header,
body.sg-theme-acik:has(.sg-nearby-page) .sg-header,
body:has(.sg-bs-home) .sg-header,
body:has(.sg-bs-home) .sg-header .navbar,
body:has(.sg-bs-home) .sg-header .navbar .container,
body:has(.sg-nearby-page) .sg-header,
body:has(.sg-nearby-page) .sg-header .navbar,
body:has(.sg-nearby-page) .sg-header .navbar .container,
body:has(.sg-customer-footerbar) .sg-header,
body:has(.sg-customer-footerbar) .sg-header .navbar,
body:has(.sg-customer-footerbar) .sg-header .navbar .container,
.sg-account-mobile-nav.sg-customer-footerbar {
    background: linear-gradient(135deg, #30585c, #095215) !important;
    border-color: rgba(232, 245, 233, .24) !important;
}

.sg-header,
.sg-header .navbar,
body:has(.sg-customer-footerbar) .sg-header {
    box-shadow: 0 .35rem 1.15rem rgba(9, 82, 21, .18) !important;
}

.sg-account-mobile-nav.sg-customer-footerbar {
    box-shadow: 0 -.55rem 1.25rem rgba(9, 82, 21, .26) !important;
}

.sg-nearby-page .sg-nearby-search-wrap {
  min-width: 0;
}

.sg-page > .sg-section.sg-nearby-page > .container {
  padding: 3px 0 0 !important;
}

.sg-page > .sg-section.sg-nearby-page > .container > .sg-nearby-shell.card {
  width: 100% !important;
}

.sg-nearby-page > .container > .card > .card-body {
  padding: 0 !important;
}

.sg-nearby-page > .container > .card > .card-body > .row:first-child {
  align-items: center !important;
  margin-top: 0 !important;
}

.sg-nearby-page > .container > .card > .card-body > .row:first-child > [class*="col"] {
  margin-top: 0 !important;
}

@media (max-width: 767.98px) {
  .sg-nearby-page > .container > .card > .card-body > .row:first-child > .order-2 {
    margin-top: 5px !important;
  }
}

.sg-nearby-page .sg-home-location {
  margin-top: 0 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.sg-nearby-page .sg-nearby-search-wrap form[data-smart-search] {
  border: 0 !important;
  min-width: 0;
}

.sg-nearby-page .sg-nearby-search-wrap form[data-smart-search] > .card-body {
  padding: 0 !important;
}

.sg-nearby-page .sg-nearby-back-btn {
  width: 42px;
  min-height: 0;
  border-radius: .5rem;
  color: #30585c;
  border-color: #d7e5df !important;
  background: #ffffff;
  box-shadow: 0 6px 16px rgba(15, 23, 42, .08);
}

.sg-nearby-page .sg-nearby-back-btn:is(:hover, :focus-visible) {
  color: #f97316;
  border-color: #f97316 !important;
  background: #fff7ed;
  box-shadow: 0 8px 18px rgba(249, 115, 22, .16);
}

/* Final no-blue guard: hover/focus borders must stay in the food-theme palette. */
body :is(
    .btn,
    .form-control,
    .form-select,
    .form-check-input,
    .input-group,
    .input-group-text,
    .nav-link,
    .dropdown-item,
    .card,
    a.card,
    button.card,
    .sg-icon-button,
    .sg-category-tabs button,
    .sg-home-category-tabs .nav-link,
    .sg-home-bestseller-card-compact,
    .sg-store,
    .sg-product
):is(:hover, :focus, :focus-visible, :active, .active, .is-active, .show) {
    border-color: #f97316 !important;
}

body :is(
    .btn,
    .form-control,
    .form-select,
    .form-check-input,
    .nav-link,
    .dropdown-item,
    .card,
    a.card,
    button.card,
    .sg-icon-button,
    .sg-category-tabs button,
    .sg-home-category-tabs .nav-link
):is(:focus, :focus-visible) {
    box-shadow: 0 0 0 .16rem rgba(249, 115, 22, .18) !important;
    outline-color: rgba(249, 115, 22, .42) !important;
}

body :is(.btn-outline-primary, .border-primary) {
    border-color: #f97316 !important;
}

body :is(.text-primary) {
    color: #0f766e !important;
}

/* Nearby page: keep the customer footerbar visible without artificial page height. */
body:has(.sg-nearby-page) .sg-page {
    min-height: 0 !important;
}

body:has(.sg-nearby-page) .sg-nearby-page {
    min-height: 0 !important;
    padding-bottom: 5px !important;
}

body:has(.sg-nearby-page) .sg-nearby-page > .container,
body:has(.sg-nearby-page) .sg-nearby-page > .container > .card,
body:has(.sg-nearby-page) .sg-nearby-page > .container > .card > .card-body {
    margin-bottom: 0 !important;
}

@media (max-width: 767.98px) {
    body:has(.sg-customer-footerbar) .sg-footer {
        padding-bottom: calc(var(--sg-footerbar-h) + 12px + env(safe-area-inset-bottom)) !important;
    }

    body:has(.sg-customer-footerbar) main.sg-page,
    body:has(.sg-customer-footerbar) main.sg-page > .sg-section:last-child,
    body:has(.sg-customer-footerbar) main.sg-page > section:last-child {
        padding-bottom: 5px !important;
    }

    .sg-account-mobile-nav.sg-customer-footerbar {
        bottom: 0 !important;
        position: fixed !important;
    }
}

/* Final home category image fit: uploaded category photos fill the round icon cleanly. */
.sg-bs-home .sg-home-category-strip .sg-home-category-image {
    border-radius: 50% !important;
    overflow: hidden !important;
}

.sg-bs-home .sg-home-category-strip .sg-home-category-image > img,
.sg-bs-home .sg-home-category-strip .sg-home-category-image > img.object-fit-contain {
    display: block !important;
    height: 100% !important;
    inset: 0 !important;
    margin: auto !important;
    max-height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    padding: 0 !important;
    width: 100% !important;
}


/* Admin login mobile fit: keep the form inside the viewport on small screens. */
@media (max-width: 767.98px) {
    body:has(.sg-panel-login-admin) {
        overflow-x: hidden !important;
    }

    body:has(.sg-panel-login-admin) .sg-auth-topbar .navbar,
    body:has(.sg-panel-login-admin) .sg-auth-topbar .navbar > .container {
        min-height: 52px !important;
        padding-bottom: 6px !important;
        padding-top: 6px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-page {
        min-height: auto !important;
        padding: 0 !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-page .sg-auth-section {
        min-height: auto !important;
        padding: 8px 0 14px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-page .sg-auth-section .container {
        max-width: 100% !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 100% !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-shell {
        display: block !important;
        margin: 0 auto !important;
        max-width: 420px !important;
        width: 100% !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-form-card {
        border-radius: 10px !important;
        gap: 10px !important;
        padding: 12px !important;
        width: 100% !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-head {
        gap: 6px !important;
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 9px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-head h1 {
        font-size: 1.1rem !important;
        line-height: 1.2 !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-head p,
    body:has(.sg-panel-login-admin) .sg-panel-login-info {
        display: none !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-form {
        gap: 9px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-form .sg-auth-input {
        min-height: 54px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-form .form-control {
        min-height: 40px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-form .sg-auth-row {
        align-items: center !important;
        gap: 8px !important;
    }

    body:has(.sg-panel-login-admin) .sg-panel-login-submit {
        min-height: 40px !important;
        width: 100% !important;
    }
}

.sg-security-input-group {
    display: flex;
    align-items: stretch;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.sg-security-input-group .input-group-text {
    min-width: 104px;
    border-color: #d7e7e3;
    background: #eef8f5;
    color: #21443e;
    font-size: .76rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.sg-security-input-group .form-control {
    min-width: 0;
}

.sg-security-input-group:focus-within .input-group-text {
    border-color: #0f766e;
    background: #e0f4ef;
    color: #0f3f3a;
}

@media (max-width: 575.98px) {
    .sg-security-input-group .input-group-text {
        min-width: 82px;
        padding-right: .45rem;
        padding-left: .45rem;
        font-size: .7rem;
    }
}

/* Bootstrap-style labelled fields for all login/register forms. */
:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) {
    display: grid !important;
    gap: 10px !important;
}

:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input {
    --sg-auth-label-width: 108px;
    display: grid !important;
    grid-template-columns: var(--sg-auth-label-width) minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 0 !important;
    min-width: 0 !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: .5rem !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.sg-login-clean-form .sg-auth-input,
.sg-panel-login-form .sg-auth-input {
    --sg-auth-label-width: 82px;
}

.sg-forgot-form .sg-auth-input {
    --sg-auth-label-width: 120px;
}

.sg-register-grid-2 .sg-auth-input,
.sg-work-form-grid .sg-auth-input,
.sg-work-courier-grid .sg-auth-input,
.sg-work-extra-business .sg-auth-input {
    --sg-auth-label-width: 92px;
}

:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > span {
    display: inline-flex !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 .5rem !important;
    border: 1px solid #d7e7e3 !important;
    border-right: 0 !important;
    border-radius: .5rem 0 0 .5rem !important;
    background: #eef8f5 !important;
    color: #21443e !important;
    font-size: .73rem !important;
    font-weight: 750 !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > :is(input, select, textarea, .form-control, .form-select, .sg-region-cascade) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: 100% !important;
    min-height: 42px !important;
    margin: 0 !important;
    border-radius: 0 .5rem .5rem 0 !important;
}

:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > :is(input, select, textarea, .form-control, .form-select) {
    padding-left: 34px !important;
    font-size: .9rem !important;
}

:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > i {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: start !important;
    left: 11px !important;
    color: #0f766e !important;
    font-size: 1rem !important;
    z-index: 4 !important;
}

:is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input:focus-within > span {
    border-color: #0f766e !important;
    background: #e0f4ef !important;
    color: #0f3f3a !important;
}

.sg-forgot-form .sg-forgot-captcha .sg-captcha-row {
    display: grid !important;
    grid-template-columns: 120px minmax(64px, auto) minmax(0, 1fr);
    align-items: stretch;
    gap: 0;
}

.sg-forgot-form .sg-forgot-captcha .sg-captcha-row > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 .5rem;
    border: 1px solid #d7e7e3;
    border-right: 0;
    border-radius: .5rem 0 0 .5rem;
    background: #eef8f5;
    color: #21443e;
    font-size: .73rem;
    font-weight: 750;
    white-space: nowrap;
}

.sg-forgot-form .sg-forgot-captcha .sg-captcha-row > strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 .55rem;
    border: 1px solid #d7e7e3;
    border-right: 0;
    background: #fff7ed;
    color: #9a3412;
    font-size: .88rem;
    font-weight: 850;
}

.sg-forgot-form .sg-forgot-captcha .sg-captcha-row > .form-control {
    min-height: 42px !important;
    border-radius: 0 .5rem .5rem 0 !important;
}

@media (max-width: 575.98px) {
    :is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input {
        --sg-auth-label-width: 82px;
        min-height: 40px !important;
    }

    .sg-forgot-form .sg-auth-input {
        --sg-auth-label-width: 98px;
    }

    .sg-register-form .sg-auth-input,
    .sg-work-apply-form .sg-auth-input {
        --sg-auth-label-width: 88px;
    }

    :is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > span,
    :is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > :is(input, select, textarea, .form-control, .form-select, .sg-region-cascade) {
        min-height: 40px !important;
    }

    :is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > span {
        padding: 0 .35rem !important;
        font-size: .69rem !important;
    }

    :is(.sg-login-clean-form, .sg-panel-login-form, .sg-forgot-form, .sg-register-form, .sg-work-apply-form) .sg-auth-input > :is(input, select, textarea, .form-control, .form-select) {
        font-size: .88rem !important;
    }

    .sg-forgot-form .sg-forgot-captcha .sg-captcha-row {
        grid-template-columns: 98px minmax(54px, auto) minmax(0, 1fr);
    }
}

.sg-logout-svg {
    color: currentColor;
    display: inline-block;
    flex: 0 0 auto;
    fill: currentColor;
    height: 1.1em;
    opacity: 1;
    vertical-align: -.14em;
    width: 1.1em;
}

.sg-logout-svg path {
    fill: currentColor;
    opacity: 1;
}

/* Homepage is intentionally mobile-first on every screen size. */
body:has(.sg-home-template-top) .sg-header {
    display: none !important;
}

body:has(.sg-home-template-top) .sg-page,
body:has(.sg-home-template-top) .sg-bs-home {
    background: #f8f9fa !important;
    padding: 0 !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container {
    background: #ffffff !important;
    box-shadow: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container > .row {
    --bs-gutter-x: 0 !important;
    --bs-gutter-y: 2px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12 {
    padding-left: 1px !important;
    padding-right: 1px !important;
}

body:has(.sg-home-template-top) .sg-home-template-top {
    display: block !important;
    padding-top: 1px !important;
    padding-bottom: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-template-shell {
    background: #ffffff !important;
    display: grid !important;
    gap: 2px !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12:nth-child(2),
body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12:has(> .sg-home-category-tabs-card),
body:has(.sg-home-template-top) .sg-home-category-tabs-card {
    display: none !important;
}

/* Mobile homepage template from the provided reference. */
.sg-home-template-top {
    display: none;
}

@media (max-width: 767.98px) {
    body:has(.sg-home-template-top) .sg-header {
        display: none !important;
    }

    body:has(.sg-home-template-top) .sg-page,
    body:has(.sg-home-template-top) .sg-bs-home {
        background: #ffffff !important;
        padding-top: 0 !important;
    }

    body:has(.sg-home-template-top) .sg-bs-home > .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body:has(.sg-home-template-top) .sg-bs-home > .container > .row {
        --bs-gutter-x: 0 !important;
        --bs-gutter-y: 2px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12 {
        padding-left: 1px !important;
        padding-right: 1px !important;
    }

    body:has(.sg-home-template-top) .sg-home-template-top {
        display: block !important;
        padding-top: 1px !important;
        padding-bottom: 0 !important;
    }

    body:has(.sg-home-template-top) .sg-home-template-shell {
        background: #ffffff;
        display: grid;
        gap: 2px;
        width: 100%;
    }

    body:has(.sg-home-template-top) .sg-home-template-header {
        align-items: center;
        display: flex;
        gap: 10px;
        justify-content: space-between;
        min-width: 0;
    }

    body:has(.sg-home-template-top) .sg-home-template-address {
        align-items: center;
        background: transparent;
        border: 0;
        color: #121212;
        display: inline-flex;
        flex: 1 1 auto;
        font-size: .75rem;
        font-weight: 620;
        gap: 5px;
        justify-content: flex-start;
        min-height: 34px;
        min-width: 0;
        padding: 0;
        text-align: left;
    }

    body:has(.sg-home-template-top) .sg-home-template-address span {
        display: block;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    body:has(.sg-home-template-top) .sg-home-template-address i {
        color: #121212;
        flex: 0 0 auto;
        font-size: .78rem;
    }

    body:has(.sg-home-template-top) .sg-home-template-switch {
        align-items: center;
        background: #f1f1f2;
        border-radius: 999px;
        box-shadow: inset 0 1px 2px rgba(0, 0, 0, .03);
        display: inline-flex;
        flex: 0 0 auto;
        gap: 2px;
        height: 36px;
        margin-left: auto;
        padding: 3px;
    }

    body:has(.sg-home-template-top) .sg-home-template-tab {
        align-items: center;
        border-radius: 999px;
        color: #6c757d;
        display: inline-flex;
        font-size: .72rem;
        font-weight: 800;
        gap: 4px;
        height: 30px;
        justify-content: center;
        min-width: 34px;
        padding: 0 10px;
        text-decoration: none;
        white-space: nowrap;
    }

    body:has(.sg-home-template-top) .sg-home-template-tab i {
        color: #6c757d;
        font-size: .86rem;
    }

    body:has(.sg-home-template-top) .sg-home-template-tab:not(.is-selected) span {
        display: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-tab.is-selected {
        background: #ffffff;
        box-shadow: 0 2px 4px rgba(0, 0, 0, .06);
        color: #ff5a00;
    }

    body:has(.sg-home-template-top) .sg-home-template-tab.is-selected i {
        color: #ff5a00;
    }

    body:has(.sg-home-template-top) .sg-home-template-search {
        align-items: center;
        display: grid;
        gap: 10px;
        grid-template-columns: minmax(0, 1fr) 38px;
        position: relative;
    }

    body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu) {
        align-items: center;
        background: #f1f2f3;
        border: 0;
        border-radius: 999px;
        display: flex;
        gap: 10px;
        min-height: 44px;
        min-width: 0;
        padding: 0 14px;
    }

    body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu):focus-within {
        box-shadow: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu) > :is(i, .sg-home-template-search-submit) {
        align-items: center;
        background: transparent;
        border: 0;
        color: #ff5a00;
        display: inline-flex;
        flex: 0 0 auto;
        font-size: 1.06rem;
        height: 28px;
        justify-content: center;
        padding: 0;
        width: 28px;
    }

    body:has(.sg-home-template-top) .sg-home-template-search-submit:focus,
    body:has(.sg-home-template-top) .sg-home-template-search-submit:focus-visible {
        box-shadow: none;
        outline: 0;
    }

    body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu) input {
        background: transparent;
        border: 0;
        box-shadow: none;
        color: #1c1c1c;
        flex: 1 1 auto;
        font-size: .84rem;
        font-weight: 500;
        min-height: 40px;
        min-width: 0;
        outline: 0;
    }

    body:has(.sg-home-template-top) .sg-home-template-search input::placeholder {
        color: #6c757d;
        opacity: 1;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter {
        align-items: center;
        background: transparent;
        border: 0;
        color: #ff5a00;
        display: inline-flex;
        font-size: 1.34rem;
        height: 44px;
        justify-content: center;
        padding: 0;
        width: 38px;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-wrap {
        position: relative;
    }

    body:has(.sg-home-template-top) .sg-home-template-search > .sg-home-template-filter-menu {
        border: 1px solid #eef0f2 !important;
        border-radius: 6px !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, .08) !important;
        display: none;
        gap: 10px;
        margin: 0 !important;
        min-width: 100% !important;
        padding: 12px !important;
    }

    body:has(.sg-home-template-top) .sg-home-template-search > .sg-home-template-filter-menu.is-open {
        display: grid;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-head {
        align-items: center;
        border-bottom: 1px solid #c1c1c1;
        display: flex;
        justify-content: space-between;
        margin-bottom: 2px;
        padding-bottom: 8px;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-head strong {
        color: #1a1a1a;
        font-size: .82rem;
        font-weight: 760;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-head .btn {
        color: #ff5a00 !important;
        font-size: .72rem;
        font-weight: 800;
        min-height: auto;
        text-decoration: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-group {
        display: grid;
        gap: 6px;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-group > span {
        color: #8e9499;
        font-size: .68rem;
        font-weight: 780;
        letter-spacing: .3px;
        text-transform: uppercase;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-chips {
        display: flex;
        gap: 6px;
        overflow-x: auto;
        padding-bottom: 1px;
        scrollbar-width: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-chips::-webkit-scrollbar {
        display: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-chips label {
        align-items: center;
        background: #ffffff;
        border: 1px solid #e9ecef;
        border-radius: 7px;
        color: #495057;
        cursor: pointer;
        display: inline-flex;
        flex: 0 0 auto;
        font-size: .72rem;
        font-weight: 620;
        justify-content: flex-start;
        margin: 0;
        min-height: 28px;
        padding: 5px 10px;
        white-space: nowrap;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-chips input {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-chips label:has(input:checked) {
        background: #fff0eb;
        border-color: #f0f0f0;
        color: #ff5a00;
        font-weight: 760;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-apply {
        background: #ff5a00 !important;
        border: 0 !important;
        border-radius: 8px !important;
        color: #ffffff !important;
        font-size: .78rem;
        font-weight: 800;
        min-height: 36px;
        width: 100%;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter-apply:hover,
    body:has(.sg-home-template-top) .sg-home-template-filter-apply:focus-visible {
        background: #e85f00 !important;
        color: #ffffff !important;
    }

    body:has(.sg-home-template-top) .sg-home-template-filter:hover,
    body:has(.sg-home-template-top) .sg-home-template-filter:focus-visible {
        color: #e85f00;
        outline: 0;
        box-shadow: none;
        transform: scale(.98);
    }

    body:has(.sg-home-template-top) .sg-home-template-categories {
        display: flex;
        gap: 12px;
        margin: 0 -2px 2px;
        overflow-x: auto;
        padding: 0 2px 4px;
        scrollbar-width: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-categories::-webkit-scrollbar {
        display: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-category {
        align-items: center;
        color: #032b3d;
        display: flex;
        flex: 0 0 88px;
        flex-direction: column;
        gap: 7px;
        min-width: 88px;
        text-align: center;
        text-decoration: none;
    }

    body:has(.sg-home-template-top) .sg-home-template-category-image {
        align-items: center;
        background: #f8f9fa;
        border: 1px solid #f1f3f5;
        border-radius: 14px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, .04);
        display: flex;
        height: 74px;
        justify-content: center;
        overflow: hidden;
        width: 88px;
    }

    body:has(.sg-home-template-top) .sg-home-template-category-image img {
        height: 100%;
        object-fit: cover;
        width: 100%;
    }

    body:has(.sg-home-template-top) .sg-home-template-category strong {
        color: #364047;
        display: block;
        font-size: .74rem;
        font-weight: 650;
        line-height: 1.12;
        max-width: 88px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12:nth-child(2),
    body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12:has(> .sg-home-category-tabs-card),
    body:has(.sg-home-template-top) .sg-home-category-tabs-card {
        display: none !important;
    }
}

/* Home sponsored stores: exact desktop/mobile fit, no visible mobile scrollbar. */
.sg-bs-home .sg-home-sponsored-viewport {
    overflow: visible !important;
    padding: 0 !important;
    width: 100% !important;
}

.sg-bs-home .sg-home-sponsored-track[data-home-carousel] {
    display: flex !important;
    grid-auto-columns: unset !important;
    grid-auto-flow: unset !important;
    grid-template-columns: none !important;
    gap: .5rem !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 !important;
    scroll-behavior: smooth !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.sg-bs-home .sg-home-sponsored-track[data-home-carousel]::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

.sg-bs-home .sg-home-sponsored-track[data-home-carousel] > .sg-home-sponsored-item {
    flex: 0 0 calc((100% - 1.5rem) / 4) !important;
    width: calc((100% - 1.5rem) / 4) !important;
    min-width: 0 !important;
    max-width: none !important;
    scroll-snap-align: start !important;
}

.sg-bs-home .sg-home-sponsored-arrow-prev {
    left: -17px !important;
}

.sg-bs-home .sg-home-sponsored-arrow-next {
    right: -17px !important;
}

@media (max-width: 767.98px) {
    .sg-bs-home .sg-home-sponsored-stores-card > .card-body {
        overflow: hidden !important;
        padding: .55rem !important;
    }

    .sg-bs-home .sg-home-sponsored-viewport {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .sg-bs-home .sg-home-sponsored-track[data-home-carousel] {
        justify-content: flex-start !important;
        gap: .35rem !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overscroll-behavior-x: contain !important;
        scroll-padding-left: 0 !important;
        -webkit-overflow-scrolling: touch;
    }

    .sg-bs-home .sg-home-sponsored-track[data-home-carousel] > .sg-home-sponsored-item {
        flex: 0 0 calc((100% - .35rem) / 2) !important;
        width: calc((100% - .35rem) / 2) !important;
        min-width: calc((100% - .35rem) / 2) !important;
        transform: none !important;
    }

    .sg-bs-home .sg-home-sponsored-track[data-home-carousel] > .sg-home-sponsored-item > .card {
        overflow: hidden !important;
    }
}

/* Final homepage mobile-only presentation for every viewport. */
body:has(.sg-home-template-top) .sg-header {
    display: none !important;
}

body:has(.sg-home-template-top) {
    background: #f8f9fa !important;
}

body:has(.sg-home-template-top) .sg-page,
body:has(.sg-home-template-top) .sg-bs-home {
    background: #f8f9fa !important;
    padding: 0 !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container {
    background: #ffffff !important;
    box-shadow: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container > .row {
    --bs-gutter-x: 0 !important;
    --bs-gutter-y: 2px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12 {
    padding-left: 1px !important;
    padding-right: 1px !important;
}

body:has(.sg-home-template-top) .sg-home-template-top {
    display: block !important;
    padding-top: 1px !important;
    padding-bottom: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-template-shell {
    background: #ffffff !important;
    display: grid !important;
    gap: 2px !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-home-template-header {
    align-items: center !important;
    display: flex !important;
    gap: 10px !important;
    justify-content: space-between !important;
    min-width: 0 !important;
    padding-right: 1px !important;
    padding-left: 1px !important;
}

body:has(.sg-home-template-top) .sg-home-template-address {
    align-items: center !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .08) !important;
    color: #121212 !important;
    display: inline-flex !important;
    flex: 0 1 auto !important;
    font-size: .75rem !important;
    font-weight: 620 !important;
    gap: 5px !important;
    justify-content: flex-start !important;
    min-height: 34px !important;
    min-width: 0 !important;
    max-width: min(58vw, 230px) !important;
    padding: 0 10px !important;
    text-align: left !important;
}

body:has(.sg-home-template-top) .sg-home-template-address span {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body:has(.sg-home-template-top) .sg-home-template-address i {
    color: #121212 !important;
    flex: 0 0 auto !important;
    font-size: .78rem !important;
}

.sg-mobile-location-gate {
    z-index: 1260 !important;
}

.sg-mobile-location-gate .modal-dialog {
    width: min(420px, calc(100% - 1rem)) !important;
}

.sg-mobile-location-gate .modal-content {
    border-radius: 12px !important;
}

.sg-mobile-location-choice {
    align-items: center !important;
    border-color: #eef0f2 !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .08) !important;
    color: #1f2937 !important;
    display: inline-flex !important;
    font-size: .86rem !important;
    font-weight: 750 !important;
    gap: 8px !important;
    justify-content: flex-start !important;
    min-height: 42px !important;
}

.sg-mobile-location-choice.is-selected {
    background: #fff7ed !important;
    border-color: #ffb37d !important;
    color: #b45309 !important;
}

.sg-mobile-location-gate .form-select {
    border-color: #eef0f2 !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .08) !important;
    font-size: .88rem !important;
    min-height: 42px !important;
}

body:has(.sg-home-template-top) .sg-home-template-switch {
    align-items: center !important;
    background: #f1f1f2 !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .03) !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    gap: 2px !important;
    height: 36px !important;
    margin-left: auto !important;
    padding: 3px !important;
}

body:has(.sg-home-template-top) .sg-home-template-tab {
    align-items: center !important;
    border-radius: 999px !important;
    color: #6c757d !important;
    display: inline-flex !important;
    font-size: .72rem !important;
    font-weight: 800 !important;
    gap: 4px !important;
    height: 30px !important;
    justify-content: center !important;
    min-width: 34px !important;
    padding: 0 10px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

body:has(.sg-home-template-top) .sg-home-template-tab i {
    color: #6c757d !important;
    font-size: .86rem !important;
}

body:has(.sg-home-template-top) .sg-home-template-tab:not(.is-selected) span {
    display: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-tab.is-selected {
    background: #ffffff !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .06) !important;
    color: #ff5a00 !important;
}

body:has(.sg-home-template-top) .sg-home-template-tab.is-selected i {
    color: #ff5a00 !important;
}

body:has(.sg-home-template-top) .sg-home-template-search {
    align-items: center !important;
    display: grid !important;
    gap: 10px !important;
    grid-template-columns: minmax(0, 1fr) 38px !important;
    position: relative !important;
}

body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu) {
    align-items: center !important;
    background: #f1f2f3 !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    display: flex !important;
    gap: 10px !important;
    min-height: 44px !important;
    min-width: 0 !important;
    padding: 0 14px !important;
}

body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu):focus-within {
    box-shadow: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu) > :is(i, .sg-home-template-search-submit) {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    color: #ff5a00 !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    font-size: 1.06rem !important;
    height: 28px !important;
    justify-content: center !important;
    padding: 0 !important;
    width: 28px !important;
}

body:has(.sg-home-template-top) .sg-home-template-search-submit:focus,
body:has(.sg-home-template-top) .sg-home-template-search-submit:focus-visible {
    box-shadow: none !important;
    outline: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-template-search > form:not(.sg-home-template-filter-menu) input {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #1c1c1c !important;
    flex: 1 1 auto !important;
    font-size: .84rem !important;
    font-weight: 500 !important;
    min-height: 40px !important;
    min-width: 0 !important;
    outline: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-template-search input::placeholder {
    color: #6c757d !important;
    opacity: 1 !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    color: #ff5a00 !important;
    display: inline-flex !important;
    font-size: 1.34rem !important;
    height: 44px !important;
    justify-content: center !important;
    padding: 0 !important;
    width: 38px !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter:focus,
body:has(.sg-home-template-top) .sg-home-template-filter:focus-visible {
    box-shadow: none !important;
    outline: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-menu {
    align-items: stretch !important;
    border: 1px solid #eef0f2 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, .08) !important;
    display: none !important;
    flex-direction: initial !important;
    gap: 10px !important;
    left: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 14px 16px !important;
    position: absolute !important;
    right: 0 !important;
    top: calc(100% + 8px) !important;
    transform: none !important;
    width: 100% !important;
    z-index: 30 !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-menu[hidden] {
    display: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-menu.is-open {
    display: grid !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-head {
    align-items: center !important;
    border-bottom: 1px solid #f1f3f5 !important;
    display: flex !important;
    justify-content: space-between !important;
    margin-bottom: 2px !important;
    padding-bottom: 8px !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-head strong {
    color: #1a1a1a !important;
    font-size: .82rem !important;
    font-weight: 760 !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-head .btn {
    color: #ff5a00 !important;
    font-size: .72rem !important;
    font-weight: 800 !important;
    min-height: auto !important;
    text-decoration: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-group {
    display: grid !important;
    gap: 6px !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-group > span {
    color: #8e9499 !important;
    font-size: .68rem !important;
    font-weight: 780 !important;
    letter-spacing: .3px !important;
    text-transform: uppercase !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-chips {
    display: flex !important;
    gap: 6px !important;
    overflow-x: auto !important;
    padding-bottom: 1px !important;
    scrollbar-width: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-chips::-webkit-scrollbar {
    display: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-chips label {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid #e9ecef !important;
    border-radius: 7px !important;
    color: #495057 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    font-size: .72rem !important;
    font-weight: 620 !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    min-height: 28px !important;
    padding: 5px 10px !important;
    white-space: nowrap !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-chips input {
    opacity: 0 !important;
    outline: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-chips label:focus-within {
    box-shadow: none !important;
    outline: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-chips label:has(input:checked) {
    background: #fff0eb !important;
    border-color: #f6f1ee !important;
    color: #ff5a00 !important;
    font-weight: 760 !important;
}

body:has(.sg-home-template-top) .sg-home-template-filter-apply {
    background: #ff5a00 !important;
    border: 0 !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-size: .78rem !important;
    font-weight: 800 !important;
    min-height: 36px !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-home-template-categories {
    display: flex !important;
    gap: 12px !important;
    margin: 0 -2px 2px !important;
    overflow-x: auto !important;
    padding: 0 2px 4px !important;
    scrollbar-width: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-categories::-webkit-scrollbar {
    display: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-category {
    align-items: center !important;
    color: #032b3d !important;
    display: flex !important;
    flex: 0 0 88px !important;
    flex-direction: column !important;
    gap: 7px !important;
    min-width: 88px !important;
    text-align: center !important;
    text-decoration: none !important;
}

body:has(.sg-home-template-top) .sg-home-template-category-image {
    align-items: center !important;
    background: #f8f9fa !important;
    border: 1px solid #f1f3f5 !important;
    border-radius: 14px !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .04) !important;
    display: flex !important;
    height: 74px !important;
    justify-content: center !important;
    overflow: hidden !important;
    width: 88px !important;
}

body:has(.sg-home-template-top) .sg-home-template-category-image img {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body:has(.sg-home-template-top) .sg-home-template-category strong {
    color: #364047 !important;
    display: block !important;
    font-size: .74rem !important;
    font-weight: 650 !important;
    line-height: 1.12 !important;
    max-width: 88px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12:nth-child(2),
body:has(.sg-home-template-top) .sg-bs-home > .container > .row > .col-12:has(> .sg-home-category-tabs-card),
body:has(.sg-home-template-top) .sg-home-category-tabs-card {
    display: none !important;
}

body:has(.sg-home-template-top) .sg-home-popular-stores-grid {
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: 1fr !important;
    margin: 0 !important;
}

body:has(.sg-home-template-top) .sg-home-sponsored-track[data-home-carousel] > .sg-home-sponsored-item {
    flex: 0 0 calc((100% - .35rem) / 2) !important;
    min-width: calc((100% - .35rem) / 2) !important;
    width: calc((100% - .35rem) / 2) !important;
}

.sg-bs-home .sg-home-popular-stores-grid.is-search-results,
body:has(.sg-home-template-top) .sg-home-popular-stores-grid.is-search-results {
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: 1fr !important;
    margin: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
}

.sg-bs-home .sg-home-popular-stores-grid.is-search-results > .sg-home-store-strip-item,
body:has(.sg-home-template-top) .sg-home-popular-stores-grid.is-search-results > .sg-home-store-strip-item {
    flex: initial !important;
    min-width: 0 !important;
    width: 100% !important;
}

.sg-search-result-store-card {
    border-color: #eef0f2 !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .08) !important;
    color: #1f2937 !important;
    min-height: 0 !important;
}

.sg-search-result-store-card:hover {
    border-color: #f97316 !important;
    box-shadow: 0 10px 26px rgba(249, 115, 22, .16) !important;
    transform: translateY(-1px);
}

.sg-search-result-store-card > .ratio {
    --bs-aspect-ratio: 54% !important;
    background: #f8fafc !important;
}

.sg-search-result-store-card .sg-store-card-body {
    gap: 7px !important;
    padding: 10px 12px 12px !important;
}

.sg-search-result-store-card .sg-store-info-box {
    gap: 7px !important;
    padding: 0 !important;
}

.sg-search-result-store-card h3 {
    color: #20242a !important;
    font-size: .96rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}

.sg-search-result-store-card p {
    color: #5b6470 !important;
    display: -webkit-box !important;
    font-size: .78rem !important;
    font-weight: 500 !important;
    line-height: 1.28 !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.sg-search-result-store-card .sg-store-meta-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    min-height: 0 !important;
}

.sg-search-result-store-card .badge {
    border: 0 !important;
    border-radius: 999px !important;
    font-size: .68rem !important;
    font-weight: 760 !important;
    padding: .32rem .48rem !important;
}

.sg-search-result-store-card .badge.text-bg-light {
    background: #f3f4f6 !important;
    color: #374151 !important;
}

@media (min-width: 768px) {
    .sg-bs-home .sg-home-popular-stores-grid.is-search-results,
    body:has(.sg-home-template-top) .sg-home-popular-stores-grid.is-search-results {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 1200px) {
    .sg-bs-home .sg-home-popular-stores-grid.is-search-results,
    body:has(.sg-home-template-top) .sg-home-popular-stores-grid.is-search-results {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

body:has(.sg-home-template-top) .sg-home-popular-stores-grid.is-search-results {
    grid-template-columns: 1fr !important;
}

.sg-smart-list-sentinel {
    min-height: 24px;
    width: 100%;
}

/* Mobile app store detail: the public system uses a phone-first layout even on desktop. */
body:has(.sg-mobile-store-app) {
    background: #ffffff !important;
}

body:has(.sg-mobile-store-app) .sg-header {
    background: #ffffff !important;
    border-bottom: 1px solid #eef0f2 !important;
    box-shadow: none !important;
}

body:has(.sg-mobile-store-app) .sg-header .container,
.sg-mobile-store-app .container {
    max-width: 480px !important;
    padding-left: 1px !important;
    padding-right: 1px !important;
}

.sg-mobile-store-app {
    background: #ffffff !important;
    color: #121212 !important;
}

.sg-mobile-store-app .sg-store-hero,
.sg-mobile-store-app .sg-store-content-section {
    background: #ffffff !important;
}

.sg-mobile-store-app .sg-store-hero {
    padding-bottom: 8px !important;
    padding-top: 8px !important;
}

.sg-mobile-store-app .sg-store-shell {
    border-radius: 18px !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, .06) !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.sg-mobile-store-app .sg-store-cover {
    background: #ffffff !important;
    min-height: 0 !important;
    position: relative !important;
}

.sg-mobile-store-app .sg-store-cover img {
    display: block !important;
    height: 178px !important;
    object-fit: contain !important;
    padding: 4px !important;
    width: 100% !important;
}

.sg-mobile-store-app .sg-store-back-floating {
    align-items: center !important;
    background: rgba(255, 255, 255, .96) !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #121212 !important;
    display: inline-flex !important;
    height: 34px !important;
    justify-content: center !important;
    left: 10px !important;
    padding: 0 !important;
    position: absolute !important;
    top: 10px !important;
    width: 34px !important;
    z-index: 5 !important;
}

.sg-mobile-store-app .sg-store-radius-badge {
    background: rgba(255, 255, 255, .95) !important;
    border: 0 !important;
    border-radius: 999px !important;
    bottom: 10px !important;
    color: #0f5132 !important;
    font-size: .68rem !important;
    font-weight: 760 !important;
    left: 10px !important;
    padding: 6px 8px !important;
    position: absolute !important;
}

.sg-mobile-store-app .sg-store-info {
    display: grid !important;
    gap: 9px !important;
    padding: 12px !important;
}

.sg-mobile-store-app .sg-store-title-row {
    align-items: flex-start !important;
    display: grid !important;
    gap: 8px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
}

.sg-mobile-store-app .sg-store-status-line {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin-bottom: 6px !important;
}

.sg-mobile-store-app .sg-store-status-line :is(.badge, .sg-store-service-chip, .sg-store-hours-chip) {
    align-items: center !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    font-size: .62rem !important;
    font-weight: 760 !important;
    gap: 4px !important;
    line-height: 1 !important;
    padding: 5px 7px !important;
}

.sg-mobile-store-app .sg-store-service-chip,
.sg-mobile-store-app .sg-store-hours-chip {
    background: #f3f4f6 !important;
    color: #374151 !important;
}

.sg-mobile-store-app .sg-store-info h1 {
    color: #121212 !important;
    font-size: 1.25rem !important;
    font-weight: 840 !important;
    letter-spacing: 0 !important;
    line-height: 1.12 !important;
    margin: 0 0 3px !important;
}

.sg-mobile-store-app .sg-store-info p {
    color: #59616b !important;
    display: -webkit-box !important;
    font-size: .82rem !important;
    line-height: 1.28 !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.sg-mobile-store-app .sg-fav-button {
    background: #ffffff !important;
    border: 1px solid #edf0f2 !important;
    border-radius: 999px !important;
    color: #ef4444 !important;
    height: 34px !important;
    width: 34px !important;
}

.sg-mobile-store-app .sg-store-badges {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}

.sg-mobile-store-app .sg-store-badges::-webkit-scrollbar {
    display: none !important;
}

.sg-mobile-store-app .sg-store-badges .badge {
    align-items: center !important;
    border: 0 !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    font-size: .64rem !important;
    font-weight: 760 !important;
    gap: 4px !important;
    padding: 6px 8px !important;
}

.sg-mobile-store-app .sg-store-hero-meta {
    display: grid !important;
    gap: 6px !important;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important;
}

.sg-mobile-store-app .sg-store-hero-meta span {
    background: #f8fafc !important;
    border: 1px solid #edf0f2 !important;
    border-radius: 10px !important;
    color: #111827 !important;
    display: grid !important;
    gap: 2px !important;
    min-width: 0 !important;
    padding: 7px 8px !important;
}

.sg-mobile-store-app .sg-store-hero-meta strong {
    color: #6b7280 !important;
    font-size: .62rem !important;
    font-weight: 760 !important;
    text-transform: uppercase !important;
}

.sg-mobile-store-app .sg-store-hero-meta span {
    font-size: .76rem !important;
    font-weight: 650 !important;
}

.sg-mobile-store-app .sg-store-hero-actions {
    display: flex !important;
    gap: 7px !important;
}

.sg-mobile-store-app .sg-store-social-btn {
    height: 30px !important;
    width: 30px !important;
}

.sg-mobile-store-app .sg-store-content-section {
    padding-bottom: 8px !important;
}

.sg-mobile-store-app .row {
    --bs-gutter-x: 0 !important;
}

.sg-mobile-store-app .sg-mobile-store-secondary {
    display: none !important;
}

.sg-mobile-store-app .sg-store-menu-panel {
    border-radius: 18px !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, .06) !important;
    overflow: hidden !important;
}

.sg-mobile-store-app .sg-panel-title {
    align-items: center !important;
    border-bottom: 1px solid #f0f2f4 !important;
    display: flex !important;
    gap: 8px !important;
    min-height: auto !important;
    padding: 10px 12px !important;
}

.sg-mobile-store-app .sg-panel-title span {
    background: #fff4ec !important;
    border-radius: 999px !important;
    color: #c2410c !important;
    font-size: .62rem !important;
    font-weight: 820 !important;
    padding: 4px 7px !important;
}

.sg-mobile-store-app .sg-panel-title h2 {
    color: #121212 !important;
    font-size: .92rem !important;
    font-weight: 820 !important;
    margin: 0 !important;
}

.sg-mobile-store-app .sg-menu-category-nav {
    border: 0 !important;
    display: flex !important;
    gap: 6px !important;
    overflow-x: auto !important;
    padding: 9px 10px !important;
    scrollbar-width: none !important;
}

.sg-mobile-store-app .sg-menu-category-nav::-webkit-scrollbar {
    display: none !important;
}

.sg-mobile-store-app .sg-menu-category-nav a {
    background: #f4f5f6 !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #333a42 !important;
    flex: 0 0 auto !important;
    font-size: .72rem !important;
    font-weight: 760 !important;
    padding: 7px 9px !important;
}

.sg-mobile-store-app .sg-menu-section {
    border: 0 !important;
    border-top: 1px solid #f0f2f4 !important;
    margin: 0 !important;
}

.sg-mobile-store-app .sg-menu-section summary {
    background: #ffffff !important;
    border: 0 !important;
    color: #121212 !important;
    min-height: auto !important;
    padding: 11px 12px !important;
}

.sg-mobile-store-app .sg-menu-category-title strong {
    color: #121212 !important;
    font-size: .95rem !important;
}

.sg-mobile-store-app .sg-menu-list {
    display: grid !important;
    gap: 8px !important;
    padding: 0 10px 10px !important;
}

.sg-mobile-store-app .sg-menu-item {
    background: #ffffff !important;
    border: 1px solid #eef0f2 !important;
    border-radius: 14px !important;
    display: grid !important;
    gap: 8px !important;
    grid-template-columns: 82px minmax(0, 1fr) 34px !important;
    min-width: 0 !important;
    padding: 8px !important;
    position: relative !important;
}

.sg-mobile-store-app .sg-menu-image-button,
.sg-mobile-store-app .sg-menu-item img {
    border-radius: 12px 12px 0 0 !important;
    height: 82px !important;
    overflow: hidden !important;
    width: 82px !important;
}

.sg-mobile-store-app .sg-menu-image-button {
    border: 0 !important;
    padding: 0 !important;
}

.sg-mobile-store-app .sg-menu-image-button:is(:hover, :focus, :focus-visible),
.sg-mobile-store-app .sg-menu-item:is(:hover, :focus-within) {
    border-color: #eef0f2 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.sg-bs-store-detail.sg-mobile-store-app .sg-menu-item:is(:hover, :focus-within) {
    background: #ffffff !important;
    border-color: #eef0f2 !important;
    box-shadow: 0 8px 18px rgba(32, 33, 36, .06) !important;
    transform: none !important;
}

.sg-bs-store-detail.sg-mobile-store-app .sg-menu-image-button:is(:hover, :focus, :focus-visible) {
    border-color: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.sg-mobile-store-app .sg-menu-item img {
    object-fit: cover !important;
}

.sg-mobile-store-app .sg-product-favorite {
    position: absolute !important;
    right: 42px !important;
    top: 8px !important;
    z-index: 2 !important;
}

.sg-mobile-store-app .sg-product-favorite .sg-fav-button {
    height: 27px !important;
    width: 27px !important;
}

.sg-mobile-store-app .sg-menu-item-body {
    display: grid !important;
    gap: 5px !important;
    min-width: 0 !important;
}

.sg-mobile-store-app .sg-menu-item-head {
    display: grid !important;
    gap: 5px !important;
}

.sg-mobile-store-app .sg-menu-name {
    min-width: 0 !important;
    padding-right: 28px !important;
}

.sg-mobile-store-app .sg-menu-item h3 {
    color: #121212 !important;
    display: -webkit-box !important;
    font-size: .84rem !important;
    font-weight: 780 !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.sg-mobile-store-app .sg-customizable-badge {
    background: #f4f5f6 !important;
    border-radius: 999px !important;
    color: #59616b !important;
    display: inline-flex !important;
    font-size: .58rem !important;
    font-weight: 760 !important;
    margin-top: 3px !important;
    padding: 3px 6px !important;
}

.sg-mobile-store-app .sg-menu-price {
    align-items: baseline !important;
    display: flex !important;
    gap: 5px !important;
}

.sg-mobile-store-app .sg-menu-price strong {
    color: #111827 !important;
    font-size: .90rem !important;
    font-weight: 840 !important;
}

.sg-mobile-store-app .sg-menu-price del,
.sg-mobile-store-app .sg-menu-price span {
    font-size: .64rem !important;
}

.sg-mobile-store-app .sg-menu-flags {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    overflow: hidden !important;
}

.sg-mobile-store-app .sg-menu-flags span {
    background: #f4f5f6 !important;
    border-radius: 999px !important;
    color: #374151 !important;
    flex: 0 1 auto !important;
    font-size: .58rem !important;
    font-weight: 760 !important;
    gap: 3px !important;
    min-width: 0 !important;
    padding: 4px 5px !important;
    white-space: nowrap !important;
}

.sg-mobile-store-app .sg-menu-detail-button {
    display: none !important;
}

.sg-mobile-store-app .sg-product-actions {
    align-items: center !important;
    display: flex !important;
    justify-content: center !important;
    min-width: 0 !important;
}

.sg-mobile-store-app .sg-product-actions .btn-primary {
    border-radius: 999px !important;
    font-size: 1rem !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    width: 32px !important;
}

.sg-mobile-store-app .sg-product-qty {
    display: none !important;
}

.sg-mobile-store-app .sg-product-add-button {
    border-radius: 999px !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    width: 32px !important;
}

.sg-mobile-store-app .sg-store-product-modal .modal-dialog {
    margin: .75rem auto !important;
    max-width: 430px !important;
}
