/* ============================================================
   Botpey Marketplace — home & browse pages design system
   Companion to css/home.css (bp-* tokens). Tailwind CDN powers
   most utilities; this file adds carousel & hero helpers.

   App-spec tokens (v2): brand #1BAC4B, canvas #FAFAFA,
   borders #EEEEEE, ink #212121 / #757575 / #9E9E9E / #BDBDBD,
   danger #F75555. Pill radii + soft shadows.
   ============================================================ */

/* --- spec palette as CSS vars (aligned with tailwind.config tokens) --- */
:root {
    --mp-brand: #1BAC4B;
    --mp-brand-dark: #0E8A3C;
    --mp-brand-light: #E8F7EE;
    --mp-canvas: #FAFAFA;
    --mp-line: #EEEEEE;
    --mp-ink: #212121;
    --mp-ink-muted: #757575;
    --mp-ink-faint: #9E9E9E;
    --mp-placeholder: #BDBDBD;
    --mp-danger: #F75555;
}

/* --- Botpey PWA brand shell --- */
.mp-brand-logo {
    display: block;
    width: auto;
    height: 36px;
    max-width: 118px;
    object-fit: contain;
}

.mp-preloader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    min-height: 100vh;
    min-height: 100dvh;
    display: grid;
    place-items: center;
    padding: max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));
    background: #064b37 url('../images/pwa/launch-background.png') center / cover no-repeat;
    opacity: 1;
    visibility: visible;
    transition: opacity .38s ease, visibility .38s ease;
}
.mp-preloader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.mp-preloader__content { display: flex; flex-direction: column; align-items: center; color: #fff; }
.mp-preloader__mark {
    width: clamp(112px, 31vw, 148px);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    padding: 14px;
    border-radius: 50%;
    background: #f5fff7;
    box-shadow: 0 20px 48px rgba(0,0,0,.24);
    animation: mp-preloader-float 1.9s ease-in-out infinite;
}
.mp-preloader__mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mp-preloader__wordmark {
    margin-top: 18px;
    font-size: clamp(34px, 10vw, 48px);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.055em;
}
.mp-preloader__bar {
    width: 116px;
    height: 4px;
    margin-top: 28px;
    overflow: hidden;
    border-radius: 99px;
    background: rgba(255,255,255,.22);
}
.mp-preloader__bar span {
    display: block;
    width: 45%;
    height: 100%;
    border-radius: inherit;
    background: #ff7a00;
    animation: mp-preloader-progress 1.25s ease-in-out infinite;
}
@keyframes mp-preloader-float { 50% { transform: translateY(-6px) scale(1.015); } }
@keyframes mp-preloader-progress {
    0% { transform: translateX(-120%); }
    100% { transform: translateX(340%); }
}

.mp-install-card {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: calc(76px + env(safe-area-inset-bottom, 0px));
    z-index: 70;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    width: min(520px, calc(100% - 24px));
    margin-inline: auto;
    padding: 12px 42px 12px 12px;
    color: #fff;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 18px;
    background: rgba(4,75,55,.97);
    box-shadow: 0 18px 48px rgba(0,0,0,.24);
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .24s ease, transform .24s ease;
}
.mp-install-card[hidden] { display: none; }
.mp-install-card.is-visible { opacity: 1; transform: translateY(0); }
.mp-install-card__icon { width: 48px; height: 48px; border-radius: 13px; object-fit: cover; }
.mp-install-card__copy { min-width: 0; }
.mp-install-card__copy strong { display: block; font-size: 13px; line-height: 1.25; }
.mp-install-card__copy span { display: block; margin-top: 2px; color: #d4eee2; font-size: 11px; line-height: 1.35; }
.mp-install-card__copy p { grid-column: 1 / -1; margin: 7px 0 0; color: #fff; font-size: 11px; line-height: 1.4; }
.mp-install-card__copy p strong { display: inline; color: #ffd5ad; font-size: inherit; }
.mp-install-card__action {
    min-height: 38px;
    padding: 0 15px;
    border-radius: 999px;
    background: #ff7a00;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}
.mp-install-card__dismiss {
    position: absolute;
    top: 4px;
    right: 6px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    color: #cde7dc;
    font-size: 25px;
    line-height: 1;
}

@media (min-width: 768px) {
    .mp-install-card { bottom: 24px; }
}

@media (max-width: 420px) {
    .mp-brand-logo { height: 28px; max-width: 78px; }
    .mp-install-card { grid-template-columns: 42px minmax(0, 1fr); }
    .mp-install-card__icon { width: 42px; height: 42px; border-radius: 11px; }
    .mp-install-card__action { grid-column: 1 / -1; width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .mp-preloader,
    .mp-preloader__mark,
    .mp-preloader__bar span,
    .mp-install-card { animation: none; transition: none; }
}

/* --- Alpine x-cloak --- */
[x-cloak] {
    display: none !important;
}

/* --- hide scrollbars on horizontal carousels --- */
.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

/* --- carousel snap --- */
.carousel-snap {
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}
.carousel-snap > * {
    scroll-snap-align: start;
}

/* --- soft fade-in-up for sections --- */
@keyframes mp-fade-up {
    from { opacity: 0; transform: translateY(18px); }
    to   { opacity: 1; transform: translateY(0); }
}
.mp-fade-up {
    animation: mp-fade-up .55s ease-out both;
}

/* --- hero decorations (blurred blobs + grid) --- */
.mp-hero-grid {
    background-image:
        linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.14) 1px, transparent 1px);
    background-size: 42px 42px;
}
.mp-blob {
    position: absolute;
    border-radius: 9999px;
    filter: blur(70px);
    pointer-events: none;
}

/* --- store logo fallback avatar --- */
.mp-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    color: #fff;
    background: linear-gradient(135deg, #059669, #65a30d);
}

/* --- product image placeholder --- */
.mp-product-ph {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a7f3d0;
    background: linear-gradient(135deg, #ecfdf5, #f0fdf4);
}

/* --- price styling --- */
.mp-price {
    color: var(--mp-brand);
    font-weight: 800;
    letter-spacing: -0.01em;
}

/* --- banner dots --- */
.mp-dot {
    width: 8px;
    height: 8px;
    border-radius: 9999px;
    background: rgba(255,255,255,.45);
    transition: all .25s ease;
}
.mp-dot--active {
    background: #fff;
    width: 22px;
}

/* --- suggestion dropdown --- */
.mp-suggest {
    animation: mp-fade-up .18s ease-out both;
}

/* --- bottom nav safe area for iOS --- */
.mp-bottom-nav {
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

/* Marketplace v3: compact, dependable, Android-inspired commerce UI */
.mp-app {
    min-width: 320px;
    color: var(--mp-ink);
    background: var(--mp-canvas);
    font-family: "Noto Sans", Roboto, system-ui, sans-serif;
    font-feature-settings: "tnum" 1;
    padding: 0;
}
.mp-app main { min-height: calc(100vh - 128px); }
.mp-app .font-extrabold { font-weight: 700; }
.mp-app .shadow-card { box-shadow: 0 1px 2px rgba(24,32,27,.06); }
.mp-app .shadow-float { box-shadow: 0 6px 18px rgba(24,32,27,.10); }
.mp-app .rounded-3xl { border-radius: 16px; }
.mp-app .rounded-2xl { border-radius: 12px; }
.mp-app button, .mp-app a { -webkit-tap-highlight-color: transparent; }
.mp-app button:focus-visible, .mp-app a:focus-visible, .mp-app input:focus-visible,
.mp-app select:focus-visible, .mp-app textarea:focus-visible {
    outline: 3px solid rgba(20,122,69,.22);
    outline-offset: 2px;
}
.mp-app-header { box-shadow: 0 1px 4px rgba(24,32,27,.08); }
.mp-location-trigger {
    display: flex; align-items: center; min-width: 0; flex-shrink: 0;
    min-height: 44px; padding: 2px 12px; border-left: 1px solid #d8ddda;
}
.mp-location-trigger__label { display: flex; align-items: center; gap: 5px; color: var(--mp-ink); font-size: 13px; font-weight: 500; }
.mp-location-trigger__label strong { color: var(--mp-brand-dark); font-weight: 800; }
.mp-location-trigger__label svg { width: 15px; height: 15px; stroke-width: 2.5; }
.mp-location-trigger__value { display: block; max-width: 180px; margin-top: 2px; overflow: hidden; color: var(--mp-ink); font-size: 13px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.mp-icon-button {
    width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0; color: var(--mp-ink-muted); border-radius: 50%;
}
.mp-icon-button:hover { color: var(--mp-brand); background: var(--mp-brand-light); }
.mp-search-input {
    width: 100%; height: 46px; padding: 0 48px; border: 1px solid #aeb7b1;
    border-radius: 10px; background: #fff; color: var(--mp-ink); font-size: 14px;
    font-weight: 500; outline: none; transition: border-color .15s, box-shadow .15s;
}
.mp-search-input:focus { border-color: var(--mp-brand); box-shadow: 0 0 0 3px rgba(20,122,69,.12); }
.mp-search-filter,
.mp-search-voice {
    position: absolute; right: 7px; top: 50%; transform: translateY(-50%);
    width: 34px; height: 34px; display: flex; align-items: center; justify-content: center;
    color: var(--mp-brand-dark); border-left: 1px solid var(--mp-line);
}
.mp-search-voice { color: var(--mp-ink-muted); }
.mp-search-voice.is-listening { color: #fff; border: 0; border-radius: 50%; background: var(--mp-brand); animation: mp-voice-pulse 1s ease-in-out infinite; }
@keyframes mp-voice-pulse { 50% { box-shadow: 0 0 0 6px rgba(27,172,75,.15); } }
.mp-language-button {
    min-height: 40px; display: inline-flex; align-items: center; gap: 6px; padding: 0 8px;
    color: var(--mp-ink-muted); font-size: 12px; font-weight: 700;
}
.mp-language-button:hover { color: var(--mp-brand); }
.mp-language-menu {
    position: absolute; top: calc(100% + 8px); right: 0; z-index: 100; width: 250px;
    max-height: min(70vh, 480px); overflow-y: auto; background: white;
    border: 1px solid var(--mp-line); border-radius: 12px; box-shadow: 0 12px 32px rgba(24,32,27,.16);
}
.mp-language-title { padding: 14px 16px 8px; color: var(--mp-ink-faint); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.mp-language-option { min-height: 48px; padding: 8px 16px; display: flex; align-items: center; justify-content: space-between; color: var(--mp-ink); }
.mp-language-option:hover, .mp-language-option.is-active { background: var(--mp-brand-light); color: var(--mp-brand-dark); }
.mp-language-option strong, .mp-language-option small { display: block; }
.mp-language-option strong { font-size: 14px; font-weight: 600; }
.mp-language-option small { color: var(--mp-ink-faint); font-size: 11px; }
.mp-desktop-nav { display: none; height: 40px; border-top: 1px solid var(--mp-line); background: #fff; }
.mp-desktop-nav a { height: 40px; display: inline-flex; align-items: center; color: var(--mp-ink-muted); font-size: 13px; font-weight: 600; border-bottom: 2px solid transparent; }
.mp-desktop-nav a:hover, .mp-desktop-nav a.is-active { color: var(--mp-brand-dark); border-bottom-color: var(--mp-brand); }
.mp-offer-slide { background-size: cover; background-position: center; }
.mp-offer-slide__scrim { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,15,11,.92) 0%, rgba(5,15,11,.68) 38%, rgba(5,15,11,.05) 72%); }
@media (min-width: 768px) {
    .mp-desktop-nav { display: block; }
    .mp-app main { min-height: calc(100vh - 176px); }
    .mp-bottom-nav { display: none !important; }
    .mp-app > .h-16, .mp-app main + .h-16 { display: none; }
}

@media (max-width: 639px) {
    .mp-app-header > div:first-child { padding: 10px 18px 12px; }
    .mp-header-row { gap: 9px; }
    .mp-brand-logo { width: 88px; height: auto; max-width: 88px; object-fit: contain; }
    .mp-location-trigger { max-width: none; padding-inline: 10px 4px; }
    .mp-location-trigger span { min-width: 0; }
    .mp-location-trigger__label { font-size: 12px; }
    .mp-location-trigger__value { max-width: 118px; font-size: 12px; }
    .mp-icon-button { width: 38px; height: 38px; }
    .mp-app-header .mp-icon-button[href*="notifications"] { display: none; }
    .mp-app-header .mp-language-button { width: 38px; height: 38px; min-height: 38px; display: inline-flex; justify-content: center; gap: 3px; padding: 0; border-radius: 50%; background: var(--mp-brand-light); color: var(--mp-brand-dark); }
    .mp-app-header .mp-language-button svg:first-child { width: 18px; height: 18px; }
    .mp-app-header .mp-language-button svg:last-child { width: 11px; height: 11px; }
    .mp-header-row > div.relative { display: block; order: 4; flex-shrink: 0; }
    .mp-language-menu { position: fixed; top: 66px; right: 12px; width: min(290px, calc(100vw - 24px)); max-height: min(72vh, 540px); }
    .mp-app-header .mp-header-cart { order: 5; color: var(--mp-ink); }
    .mp-app-header .flex-1 { min-width: 0; }
    .mp-search-input { height: 48px; border-color: #d4d9d6; border-radius: 15px; font-size: 13px; }
    .mp-app main { padding-bottom: env(safe-area-inset-bottom, 0); }
    .mp-offer-slide { background-position: 58% center; }
    .mp-offer-slide__scrim { background: linear-gradient(90deg, rgba(5,15,11,.94) 0%, rgba(5,15,11,.72) 58%, rgba(5,15,11,.10) 100%); }
}

/* ============================================================
   v4 design primitives — native Android commerce components.
   Buttons keep their label dead-center; surfaces are flat bands
   with hairline borders, not floating rounded blobs.
   ============================================================ */

/* --- buttons: always centered labels, consistent metrics --- */
.mp-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    text-align: center; vertical-align: middle; white-space: nowrap;
    height: 44px; padding: 0 20px; border-radius: 9999px;
    font-size: 14px; font-weight: 700; line-height: 1; letter-spacing: .01em;
    transition: background-color .15s ease, border-color .15s ease, transform .1s ease;
}
.mp-btn:active:not(:disabled) { transform: scale(.98); }
.mp-btn:disabled { opacity: .55; cursor: not-allowed; }
.mp-btn-lg { height: 48px; font-size: 15px; }
.mp-btn-sm { height: 36px; padding: 0 14px; font-size: 13px; border-radius: 10px; }
.mp-btn-block { width: 100%; }

.mp-btn-primary { background: var(--mp-brand); color: #fff; }
.mp-btn-primary:hover:not(:disabled) { background: var(--mp-brand-dark); }
.mp-btn-secondary { background: #fff; color: var(--mp-brand-dark); border: 1px solid rgba(27,172,75,.35); }
.mp-btn-secondary:hover:not(:disabled) { background: var(--mp-brand-light); }
.mp-btn-outline { background: #fff; color: var(--mp-ink); border: 1px solid var(--mp-line); }
.mp-btn-outline:hover:not(:disabled) { background: var(--mp-canvas); }

/* --- flat card surface --- */
.mp-card {
    background: #fff; border: 1px solid var(--mp-line); border-radius: 12px;
    box-shadow: 0 1px 2px rgba(24,32,27,.05);
}

/* --- inputs --- */
.mp-input {
    width: 100%; height: 48px; padding: 0 14px;
    border: 1px solid var(--mp-line); border-radius: 12px;
    background: var(--mp-canvas); color: var(--mp-ink);
    font-size: 14px; font-weight: 500; outline: none;
    transition: border-color .15s, background-color .15s, box-shadow .15s;
}
.mp-input::placeholder { color: var(--mp-placeholder); font-weight: 400; }
.mp-input:focus { border-color: var(--mp-brand); background: #fff; box-shadow: 0 0 0 3px rgba(27,172,75,.14); }
textarea.mp-input { height: auto; padding: 12px 14px; line-height: 1.5; resize: none; }
.mp-label { display: block; font-size: 12px; font-weight: 700; color: var(--mp-ink-muted); margin-bottom: 6px; }

/* --- flow app bar (back + title + action) --- */
.mp-appbar {
    position: sticky; top: 0; z-index: 40;
    display: flex; align-items: center; gap: 4px;
    height: 56px; padding: 0 8px;
    background: #fff; border-bottom: 1px solid var(--mp-line);
}
.mp-appbar__back {
    width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
    color: var(--mp-ink); border-radius: 50%; flex-shrink: 0;
}
.mp-appbar__back:active { background: var(--mp-canvas); }
.mp-appbar__title { flex: 1; min-width: 0; font-size: 16px; font-weight: 700; color: var(--mp-ink); }
.mp-appbar__action {
    width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
    color: var(--mp-ink-muted); border-radius: 50%; flex-shrink: 0;
}
.mp-appbar__action:active { background: var(--mp-canvas); }

/* --- fixed bottom CTA bar (checkout flow) --- */
.mp-ctabar {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
    background: #fff; border-top: 1px solid var(--mp-line);
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
}
.mp-ctabar__inner {
    display: flex; align-items: center; gap: 12px;
    width: 100%; max-width: 760px; margin: 0 auto;
}

/* --- content bands: full-width white sections separated by canvas gaps --- */
.mp-band { background: #fff; padding: 16px; }
.mp-band + .mp-band { margin-top: 8px; }

/* --- section label (the only uppercase allowed) --- */
.mp-section-label {
    font-size: 11px; font-weight: 700; color: var(--mp-ink-faint);
    text-transform: uppercase; letter-spacing: .05em;
}

/* --- payment option rows (checkout) --- */
.mp-pay-option {
    display: flex; align-items: center; gap: 12px;
    min-height: 48px; padding: 10px 12px;
    border: 1px solid var(--mp-line); border-radius: 12px; background: #fff;
    cursor: pointer; transition: border-color .15s, background-color .15s;
}
.mp-pay-option:has(input:checked) {
    border-color: var(--mp-brand); background: var(--mp-brand-light);
}
.mp-pay-option input[type="radio"] { width: 18px; height: 18px; accent-color: var(--mp-brand); flex-shrink: 0; }

/* --- quantity stepper --- */
.mp-stepper { display: inline-flex; align-items: center; gap: 2px; border: 1px solid var(--mp-line); border-radius: 10px; background: #fff; }
.mp-stepper button {
    width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center;
    font-size: 17px; font-weight: 700; color: var(--mp-brand-dark);
}
.mp-stepper button:active { background: var(--mp-brand-light); }
.mp-stepper output, .mp-stepper span[data-qty] {
    min-width: 28px; text-align: center; font-size: 14px; font-weight: 700; color: var(--mp-ink);
}

/* ============================================================
   Marketplace home v2 — reference-matched mobile app screen
   ============================================================ */
.mp-home-v2 {
    width: 100%; max-width: 1280px; margin: 0 auto; padding: 10px 16px 104px;
    overflow: hidden; background: #fff;
}
.mp-home-promos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.mp-home-promo {
    position: relative; min-width: 0; height: 114px; overflow: hidden;
    border-radius: 14px; color: var(--mp-ink); isolation: isolate;
}
.mp-home-promo--food { background: linear-gradient(145deg, #fff1e7, #ffe3c9); color: #b93610; }
.mp-home-promo--quick { background: linear-gradient(145deg, #edf9e7, #d8efca); color: #075a31; }
.mp-home-promo--local { background: linear-gradient(145deg, #f7eaff, #ead5f5); color: #54208d; }
.mp-home-promo__copy { position: relative; z-index: 2; display: flex; align-items: flex-start; flex-direction: column; width: 68%; padding: 12px 5px 8px 11px; }
.mp-home-promo__copy strong { font-size: clamp(11px, 3.3vw, 14px); font-weight: 800; line-height: .98; letter-spacing: -.035em; }
.mp-home-promo__copy small { margin-top: 7px; color: #26332d; font-size: clamp(7px, 2vw, 9px); font-weight: 500; line-height: 1.25; }
.mp-home-promo__copy b { margin-top: 6px; padding: 4px 7px; border-radius: 999px; background: #075a31; color: #fff; font-size: 7px; line-height: 1; }
.mp-home-promo img { position: absolute; z-index: 1; right: -8%; bottom: -4%; width: 78%; height: 76%; object-fit: contain; object-position: right bottom; }
.mp-home-promo--quick img { right: -10%; width: 76%; height: 72%; }
.mp-home-promo--local img { right: -12%; width: 82%; height: 74%; }

.mp-home-hero { position: relative; margin-top: 10px; }
.mp-home-hero__viewport { position: relative; aspect-ratio: 2.35 / 1; min-height: 154px; overflow: hidden; border-radius: 15px; background: #043d2e; }
.mp-home-hero__slide { position: absolute; inset: 0; overflow: hidden; background-size: cover; background-position: center; color: #fff; }
.mp-home-hero__slide::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(1,27,20,.74), rgba(1,27,20,.15) 54%, transparent 72%); pointer-events: none; }
.mp-home-hero__slide--quick::after { background: linear-gradient(90deg, rgba(2,56,42,.76), rgba(2,56,42,.13) 58%, transparent 76%); }
.mp-home-hero__slide--local::after { background: linear-gradient(90deg, rgba(45,16,61,.78), rgba(45,16,61,.12) 58%, transparent 76%); }
.mp-home-hero__eyebrow { position: absolute; z-index: 4; top: 10px; right: 11px; width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; padding: 5px; border-radius: 50%; background: #ff6708; color: #fff; font-size: 7px; font-weight: 900; line-height: 1.05; text-align: center; }
.mp-home-hero__slide--quick .mp-home-hero__eyebrow, .mp-home-hero__slide--local .mp-home-hero__eyebrow { width: auto; height: auto; padding: 6px 9px; border-radius: 999px; background: rgba(3,62,45,.88); }
.mp-home-hero__copy { position: relative; z-index: 2; display: flex; justify-content: center; align-items: flex-start; flex-direction: column; width: 55%; height: 100%; padding: 14px 0 17px 20px; }
.mp-home-hero__copy h1 { max-width: 195px; margin: 0; font-size: clamp(19px, 5.8vw, 25px); font-weight: 800; line-height: 1.08; letter-spacing: -.045em; }
.mp-home-hero__copy p { margin-top: 6px; color: rgba(255,255,255,.92); font-size: clamp(8px, 2.5vw, 11px); line-height: 1.3; }
.mp-home-hero__copy a { display: inline-flex; align-items: center; gap: 5px; min-height: 34px; margin-top: 11px; padding: 0 13px; border-radius: 9px; background: #ff6f0a; color: #fff; font-size: 10px; font-weight: 800; box-shadow: 0 5px 14px rgba(255,92,0,.22); }
.mp-home-hero__copy a svg { width: 13px; height: 13px; }
.mp-home-hero__brand-stamp { position: absolute; z-index: 3; right: 21%; top: 53%; color: #fff; font-size: clamp(28px, 9vw, 38px); font-weight: 900; line-height: 1; letter-spacing: -.12em; opacity: .9; text-shadow: 0 2px 6px rgba(0,0,0,.12); }
.mp-home-hero__brand-stamp span { color: #ff7900; }
.mp-home-hero__slide--quick .mp-home-hero__brand-stamp { right: 15%; top: 44%; }
.mp-home-hero__slide--local .mp-home-hero__brand-stamp { right: 18%; top: 40%; }
.mp-home-hero__dots { position: absolute; z-index: 4; left: 50%; bottom: 8px; display: flex; gap: 6px; transform: translateX(-50%); }
.mp-home-hero__dots button { width: 7px; height: 7px; border-radius: 99px; background: rgba(255,255,255,.5); transition: width .2s ease, background-color .2s ease; }
.mp-home-hero__dots button.is-active { width: 18px; background: #fff; }

.mp-home-section { margin-top: 15px; scroll-margin-top: 132px; }
.mp-home-section__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 28px; margin-bottom: 8px; padding-inline: 2px; }
.mp-home-section__header h2 { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: #171d1a; font-size: 15px; font-weight: 800; line-height: 1.2; letter-spacing: -.025em; }
.mp-home-section__header h2 svg { width: 16px; height: 16px; color: #089142; }
.mp-home-section__header h2 svg.is-filled { fill: #089142; }
.mp-home-section__header a { display: inline-flex; align-items: center; gap: 4px; flex-shrink: 0; color: #087c38; font-size: 11px; font-weight: 800; }
.mp-home-section__header a svg { width: 14px; height: 14px; stroke-width: 2.8; }

.mp-home-categories__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 10px; row-gap: 11px; }
.mp-home-category { display: flex; min-width: 0; align-items: center; flex-direction: column; color: #151a18; text-align: center; }
.mp-home-category__image { width: 100%; aspect-ratio: 1.28 / 1; display: grid; place-items: center; overflow: hidden; border-radius: 25px; background: #eef8f1; }
.mp-home-category__image--peach { background: #fff0e5; }
.mp-home-category__image--mint { background: #eaf7e5; }
.mp-home-category__image--yellow { background: #fff5d7; }
.mp-home-category__image--lilac { background: #f5e8fb; }
.mp-home-category__image--blue { background: #e2f4ff; }
.mp-home-category__image--aqua { background: #e0f7f4; }
.mp-home-category__image--cream { background: #fff0d8; }
.mp-home-category__image--purple { background: #f0e7fa; }
.mp-home-category__image img { display: block; width: 88%; height: 88%; object-fit: contain; object-position: center; }
.mp-home-category strong { display: block; width: 100%; margin-top: 6px; overflow: hidden; font-size: 12px; font-weight: 750; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }

.mp-home-product-rail, .mp-home-store-rail, .mp-home-more-categories__rail { display: flex; gap: 7px; overflow-x: auto; padding: 1px 1px 7px; scroll-snap-type: x mandatory; scrollbar-width: none; }
.mp-home-product-rail::-webkit-scrollbar, .mp-home-store-rail::-webkit-scrollbar, .mp-home-more-categories__rail::-webkit-scrollbar { display: none; }
.mp-home-product-card { position: relative; flex: 0 0 45.5%; min-width: 0; overflow: hidden; border: 1px solid #e8ebe9; border-radius: 11px; background: #fff; box-shadow: 0 2px 8px rgba(19,41,30,.06); scroll-snap-align: start; }
.mp-home-product-card__link { display: block; min-width: 0; color: inherit; }
.mp-home-product-card__media { position: relative; height: 112px; overflow: hidden; background: #fbfcfb; }
.mp-home-product-card__media > img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.mp-home-product-card__media .mp-product-ph { width: 100%; height: 100%; }
.mp-home-product-card__media .mp-product-ph svg { width: 28px; height: 28px; }
.mp-home-product-card__discount { position: absolute; left: 7px; bottom: 5px; padding: 4px 6px; border-radius: 4px; background: #07813a; color: #fff; font-size: 9px; font-weight: 800; line-height: 1; }
.mp-home-product-card__body { min-height: 92px; padding: 9px 8px 11px; }
.mp-home-product-card__body h3 { display: -webkit-box; overflow: hidden; color: #181d1b; font-size: 12px; font-weight: 750; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.mp-home-product-card__body > p { margin-top: 3px; overflow: hidden; color: #65706b; font-size: 10px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.mp-home-product-card__price { display: flex; align-items: baseline; gap: 4px; margin-top: 7px; }
.mp-home-product-card__price strong { color: #14271e; font-size: 14px; font-weight: 850; }
.mp-home-product-card__price del { color: #9ba29f; font-size: 10px; }
.mp-home-product-card__add { position: absolute; right: 8px; bottom: 9px; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: #098d40; color: #fff; box-shadow: 0 3px 8px rgba(9,141,64,.2); }
.mp-home-product-card__add svg { width: 15px; height: 15px; stroke-width: 2.8; }

.mp-home-store-card { flex: 0 0 46%; min-width: 0; overflow: hidden; border: 1px solid #e7eae8; border-radius: 11px; background: #fff; color: inherit; box-shadow: 0 2px 8px rgba(19,41,30,.05); scroll-snap-align: start; }
.mp-home-store-card__media { position: relative; height: 112px; overflow: hidden; background: #f2f5f3; }
.mp-home-store-card__media > img { width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.mp-home-store-card:hover .mp-home-store-card__media > img { transform: scale(1.03); }
.mp-home-store-card__verified, .mp-home-store-card__rating { position: absolute; display: inline-flex; align-items: center; gap: 3px; border-radius: 5px; font-size: 7px; font-weight: 800; }
.mp-home-store-card__verified { top: 5px; left: 5px; padding: 4px 5px; background: rgba(7,129,58,.94); color: #fff; }
.mp-home-store-card__verified svg { width: 9px; height: 9px; }
.mp-home-store-card__rating { left: 6px; bottom: 5px; padding: 4px 6px; background: rgba(255,255,255,.94); color: #18201c; }
.mp-home-store-card__rating svg { width: 9px; height: 9px; fill: #07813a; color: #07813a; }
.mp-home-store-card__body { padding: 9px; }
.mp-home-store-card__body h3 { overflow: hidden; color: #151a18; font-size: 12px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.mp-home-store-card__body > p { margin-top: 3px; overflow: hidden; color: #626c67; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.mp-home-store-card__body > div { display: flex; justify-content: space-between; gap: 5px; margin-top: 8px; color: #303a35; font-size: 9px; }
.mp-home-store-card__body > div span { display: inline-flex; align-items: center; gap: 3px; min-width: 0; white-space: nowrap; }
.mp-home-store-card__body > div svg { width: 9px; height: 9px; }
.mp-home-more-categories__rail .mp-home-category { flex: 0 0 76px; scroll-snap-align: start; }
.mp-home-more-categories__rail .mp-home-category__image { width: 68px; height: 58px; }

/* --- all categories: reference-matched native app screen --- */
.mp-categories-page {
    width: 100%; max-width: 760px; min-height: calc(100dvh - 64px); margin: 0 auto;
    padding: 24px 18px 116px; background: #fff;
}
.mp-categories-page__heading { margin: 0 3px 24px; }
.mp-categories-page__heading h1 { margin: 0; color: #181b1a; font-size: 32px; font-weight: 850; line-height: 1.1; letter-spacing: -.045em; }
.mp-categories-page__heading p { margin-top: 8px; color: #7d807e; font-size: 16px; font-weight: 500; line-height: 1.35; }
.mp-category-page-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px 11px; }
.mp-category-page-card {
    min-width: 0; min-height: 158px; display: flex; align-items: center; flex-direction: column;
    justify-content: space-between; padding: 11px 5px 14px; overflow: hidden;
    border: 1px solid #ece3da; border-radius: 18px; background: linear-gradient(155deg, #fffefd, #fffbf6);
    color: #075536; box-shadow: 0 2px 8px rgba(69,48,25,.025); transition: transform .14s ease, border-color .14s ease;
}
.mp-category-page-card:active { transform: scale(.975); border-color: rgba(7,85,54,.3); }
.mp-category-page-card__media { width: 100%; aspect-ratio: 1 / 1; display: grid; place-items: center; min-height: 0; }
.mp-category-page-card__media img { display: block; width: 94%; height: 94%; object-fit: contain; object-position: center; }
.mp-category-page-card strong { width: 100%; overflow: hidden; font-size: 14px; font-weight: 700; line-height: 1.2; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.mp-category-page-empty { min-height: 280px; display: flex; align-items: center; justify-content: center; flex-direction: column; color: var(--mp-ink-muted); text-align: center; }
.mp-category-page-empty svg { width: 42px; height: 42px; margin-bottom: 12px; color: var(--mp-brand); }
.mp-category-page-empty strong { color: var(--mp-ink); font-size: 17px; }
.mp-category-page-empty p { margin-top: 5px; font-size: 13px; }

.mp-plus-banner {
    display: grid; grid-template-columns: 88px minmax(0, 1fr) auto; align-items: center; gap: 8px;
    min-height: 108px; margin-top: 20px; padding: 8px 12px 8px 5px;
    border: 1px solid #dbe2d5; border-radius: 20px; background: linear-gradient(105deg, #eef5e9, #fffdf6);
}
.mp-plus-banner__art { position: relative; width: 88px; height: 88px; display: grid; place-items: center; }
.mp-plus-banner__art img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mp-plus-banner__art strong { position: absolute; left: 50%; top: 61%; color: #fff; font-size: 16px; font-weight: 900; line-height: 1; letter-spacing: -.04em; text-shadow: 0 1px 4px rgba(0,0,0,.35); transform: translate(-50%, -50%); }
.mp-plus-banner__copy { min-width: 0; }
.mp-plus-banner__copy h2 { color: #161a18; font-size: 17px; font-weight: 850; line-height: 1.2; }
.mp-plus-banner__copy p { max-width: 205px; margin-top: 4px; color: #737875; font-size: 12px; font-weight: 500; line-height: 1.38; }
.mp-plus-banner__button { min-height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 3px; padding: 0 13px; border-radius: 999px; background: #075536; color: #fff; font-size: 12px; font-weight: 750; white-space: nowrap; }
.mp-plus-banner__button svg { width: 16px; height: 16px; }
.mp-plus-banner__button:active { transform: scale(.97); }

.mp-plus-sheet { position: fixed; inset: 0; z-index: 120; display: flex; align-items: flex-end; justify-content: center; }
.mp-plus-sheet__scrim { position: absolute; inset: 0; width: 100%; background: rgba(8,20,14,.55); backdrop-filter: blur(2px); }
.mp-plus-sheet__panel { position: relative; z-index: 1; width: min(520px, 100%); padding: 10px 22px max(24px, env(safe-area-inset-bottom)); border-radius: 26px 26px 0 0; background: #fff; text-align: center; box-shadow: 0 -16px 50px rgba(0,0,0,.18); }
.mp-plus-sheet__handle { display: block; width: 42px; height: 4px; margin: 0 auto 8px; border-radius: 99px; background: #d7dcd9; }
.mp-plus-sheet__panel > img { width: 112px; height: 112px; margin: 0 auto -2px; object-fit: contain; }
.mp-plus-sheet__panel h2 { color: #15221b; font-size: 22px; font-weight: 850; letter-spacing: -.025em; }
.mp-plus-sheet__panel p { max-width: 360px; margin: 7px auto 18px; color: var(--mp-ink-muted); font-size: 13px; line-height: 1.5; }
.mp-plus-sheet__notify, .mp-plus-sheet__close { width: 100%; min-height: 48px; border-radius: 14px; font-size: 14px; font-weight: 800; }
.mp-plus-sheet__notify { background: #075536; color: #fff; }
.mp-plus-sheet__notify:disabled { background: #dceee4; color: #075536; }
.mp-plus-sheet__close { margin-top: 7px; color: var(--mp-ink-muted); }

/* --- elevated branded Orders action in bottom navigation --- */
.mp-bottom-nav__item { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 2px; color: var(--mp-ink-faint); font-size: 11px; font-weight: 700; transition: color .15s ease; }
.mp-bottom-nav__item:hover, .mp-bottom-nav__item.is-active { color: var(--mp-brand); }
.mp-bottom-nav__order { position: relative; justify-content: flex-end; padding-bottom: 6px; }
.mp-bottom-nav__order-mark { position: absolute; left: 50%; top: -23px; width: 60px; height: 60px; display: grid; place-items: center; border: 4px solid #fff; border-radius: 50%; background: #075536; box-shadow: 0 7px 18px rgba(4,75,55,.28); transform: translateX(-50%); }
.mp-bottom-nav__order-mark img { display: block; width: 42px; height: 42px; padding: 5px; border-radius: 14px; background: #fff; object-fit: contain; }
.mp-bottom-nav__order > span:last-child { line-height: 1; }

@media (max-width: 370px) {
    .mp-categories-page { padding-inline: 12px; }
    .mp-category-page-grid { gap: 9px 7px; }
    .mp-category-page-card { min-height: 146px; }
    .mp-category-page-card strong { font-size: 12px; }
    .mp-plus-banner { grid-template-columns: 76px minmax(0, 1fr); }
    .mp-plus-banner__art { width: 76px; height: 76px; }
    .mp-plus-banner__button { grid-column: 1 / -1; width: 100%; }
}

@media (min-width: 640px) {
    .mp-home-v2 { padding: 18px 24px 64px; }
    .mp-home-promos { gap: 12px; }
    .mp-home-promo { height: 176px; border-radius: 18px; }
    .mp-home-promo__copy { padding: 20px; }
    .mp-home-promo__copy strong { font-size: 22px; }
    .mp-home-promo__copy small { max-width: 150px; font-size: 12px; }
    .mp-home-promo__copy b { font-size: 10px; }
    .mp-home-hero { margin-top: 16px; }
    .mp-home-hero__viewport { min-height: 260px; border-radius: 20px; }
    .mp-home-hero__copy { padding-left: 40px; }
    .mp-home-hero__eyebrow { top: 18px; right: 20px; width: 72px; height: 72px; font-size: 10px; }
    .mp-home-hero__copy h1 { max-width: 360px; font-size: 34px; }
    .mp-home-hero__copy p { font-size: 14px; }
    .mp-home-hero__copy a { min-height: 42px; padding-inline: 18px; font-size: 13px; }
    .mp-home-section { margin-top: 24px; }
    .mp-home-section__header { margin-bottom: 12px; }
    .mp-home-section__header h2 { font-size: 20px; }
    .mp-home-section__header a { font-size: 13px; }
    .mp-home-categories__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 16px; }
    .mp-home-category strong { font-size: 12px; }
    .mp-home-product-card { flex-basis: calc((100% - 35px) / 6); }
    .mp-home-product-card__media { height: 130px; }
    .mp-home-product-card__body { min-height: 100px; padding: 10px; }
    .mp-home-product-card__body h3 { font-size: 12px; }
    .mp-home-product-card__body > p { font-size: 10px; }
    .mp-home-product-card__price strong { font-size: 14px; }
    .mp-home-product-card__add { width: 30px; height: 30px; }
    .mp-home-store-card { flex-basis: calc((100% - 21px) / 4); }
    .mp-home-store-card__media { height: 150px; }
    .mp-home-store-card__body { padding: 11px; }
    .mp-home-store-card__body h3 { font-size: 13px; }
    .mp-home-store-card__body > p { font-size: 11px; }
    .mp-home-store-card__body > div { font-size: 9px; }
    .mp-categories-page { max-width: 1100px; padding: 38px 28px 80px; }
    .mp-category-page-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
    .mp-category-page-card { min-height: 230px; padding: 18px 10px; }
    .mp-category-page-card strong { font-size: 17px; }
    .mp-plus-banner { grid-template-columns: 118px minmax(0, 1fr) auto; padding: 8px 22px; }
    .mp-plus-banner__art { width: 108px; height: 108px; }
    .mp-plus-banner__copy h2 { font-size: 21px; }
    .mp-plus-banner__copy p { max-width: 420px; font-size: 14px; }
    .mp-plus-banner__button { min-height: 48px; padding-inline: 22px; font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    .mp-home-hero__slide, .mp-home-hero__dots button, .mp-home-store-card__media > img, .mp-search-voice { animation: none; transition: none; }
}
/* Product and service detail experience */
.mp-detail-page{max-width:860px;margin:0 auto;background:#fffdf9;min-height:100vh;padding-bottom:148px}.mp-detail-header{height:78px;display:grid;grid-template-columns:40px 145px minmax(100px,1fr) 44px;align-items:center;gap:10px;padding:10px 20px;position:sticky;top:0;z-index:45;background:rgba(255,253,249,.96);backdrop-filter:blur(14px);border-bottom:1px solid #f0ece5}.mp-detail-header svg{width:23px;height:23px}.mp-detail-header__back,.mp-detail-header__cart{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;position:relative}.mp-detail-header__brand img{width:130px;max-height:42px;object-fit:contain;object-position:left center}.mp-detail-header__location{min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px;font-weight:600}.mp-detail-header__location span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-detail-header__location svg:last-child{width:16px}.mp-detail-header__cart>span{position:absolute;right:-1px;top:-1px;background:#ff6b00;color:#fff;border-radius:99px;min-width:19px;height:19px;padding:0 4px;font-size:11px;font-weight:800;display:grid;place-items:center}.mp-detail-body{padding:0 20px 24px}.mp-product-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:26px;padding-top:16px}.mp-product-gallery__main{height:400px;border:1px solid #e8e3dc;border-radius:16px;background:#fff;position:relative;overflow:hidden}.mp-product-gallery__main>img{width:100%;height:100%;object-fit:contain;padding:18px}.mp-detail-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#0b5b3e;background:#f2f6ef}.mp-detail-placeholder svg{width:70px;height:70px}.mp-wishlist{position:absolute;right:14px;top:14px;width:44px;height:44px;border:1px solid #e7e1d9;border-radius:50%;background:#fff;display:grid;place-items:center}.mp-product-gallery__thumbs{display:flex;gap:9px;overflow:auto;margin-top:10px}.mp-product-gallery__thumbs button{width:64px;height:64px;flex:0 0 64px;border:1.5px solid #e8e3dc;border-radius:9px;overflow:hidden;background:#fff}.mp-product-gallery__thumbs button.is-active{border-color:#09603f;box-shadow:0 0 0 1px #09603f}.mp-product-gallery__thumbs img{width:100%;height:100%;object-fit:contain}.mp-product-summary{padding-top:48px}.mp-detail-kicker{font-size:13px;font-weight:700;color:#0b6544;margin-bottom:5px}.mp-product-summary h1,.mp-service-summary h1{font-size:25px;line-height:1.25;font-weight:750;color:#171717}.mp-detail-muted{font-size:14px;color:#6f6f72;line-height:1.55}.mp-detail-rating{display:flex;align-items:center;gap:7px;margin-top:14px;font-size:14px}.mp-detail-rating svg{width:23px;height:23px;padding:4px;border-radius:5px;background:#23952c;color:#fff;fill:#fff}.mp-detail-rating span{color:#65636a}.mp-detail-price{display:flex;align-items:center;gap:12px;margin-top:20px}.mp-detail-price strong{font-size:30px}.mp-detail-price del{font-size:16px;color:#717176}.mp-detail-price span{padding:7px 10px;border-radius:8px;background:#fff2c9;color:#8b6411;font-size:14px}.mp-variant-group{margin-top:18px}.mp-variant-group legend{font-size:15px;font-weight:750;margin-bottom:8px}.mp-variant-group>div{display:flex;gap:8px;flex-wrap:wrap}.mp-variant-group button{min-height:40px;padding:8px 14px;border:1px solid #ddd8d0;border-radius:10px;background:#fff;display:flex;align-items:center;gap:7px;font-size:14px}.mp-variant-group button.is-active{background:#0b6544;color:#fff;border-color:#0b6544}.mp-variant-group button:disabled{opacity:.38}.mp-color-dot{width:17px;height:17px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}.mp-quantity{display:flex;align-items:center;justify-content:space-between;margin-top:20px;font-size:15px;font-weight:700}.mp-delivery-card{display:flex;align-items:center;gap:12px;margin-top:18px;padding:14px;border-radius:13px;background:#f2f5e9;color:#0b6544}.mp-delivery-card svg{width:28px}.mp-delivery-card span{display:flex;flex-direction:column}.mp-delivery-card strong{font-size:14px}.mp-delivery-card small{font-size:12px;color:#6b716b;margin-top:2px}.mp-seller-card,.mp-detail-card,.mp-slot-section,.mp-service-info-grid{margin-top:16px;border:1px solid #ece7df;border-radius:16px;background:#fff;padding:17px;box-shadow:0 6px 22px rgba(67,50,25,.035)}.mp-seller-card{display:flex;align-items:center;gap:12px;color:inherit}.mp-seller-card>img,.mp-seller-card>span{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#0b6544;color:#fff;display:grid;place-items:center;font-weight:800}.mp-seller-card div{flex:1;min-width:0}.mp-seller-card strong{font-size:15px;display:flex;align-items:center;gap:4px}.mp-seller-card strong svg{width:16px;color:#0b6544}.mp-seller-card small{display:block;color:#6f6f72;font-size:13px}.mp-seller-card>b{font-size:14px;color:#0b6544}.mp-detail-card h2,.mp-slot-section h2,.mp-service-info-grid h2,.mp-detail-related h2{font-size:18px;font-weight:750;margin-bottom:15px}.mp-highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mp-highlight-grid div{text-align:center;display:flex;align-items:center;flex-direction:column;gap:8px;font-size:13px}.mp-highlight-grid svg{width:29px;height:29px;color:#0b6544}.mp-detail-copy{font-size:15px;line-height:1.65;color:#37363a;white-space:pre-line}.mp-review-summary{display:grid;grid-template-columns:130px 1fr;gap:20px;align-items:center}.mp-review-summary>div:first-child{display:flex;flex-direction:column}.mp-review-summary>div:first-child strong{font-size:34px}.mp-review-summary>div:first-child span{font-size:13px;color:#6f6f72}.mp-review-summary p{display:grid;grid-template-columns:36px 1fr 32px;gap:8px;align-items:center;font-size:12px;margin:4px 0}.mp-review-summary p i{height:6px;background:#eee9e2;border-radius:8px;overflow:hidden}.mp-review-summary p b{display:block;height:100%;background:#0b6544}.mp-review-list article{border-top:1px solid #eee9e2;padding:13px 0}.mp-review-list article>strong,.mp-review-list article>span{font-size:13px;margin-right:8px}.mp-review-list article>span{color:#0b6544}.mp-review-list article p{font-size:14px;margin-top:5px;color:#4c4a4f}.mp-review-form{display:grid;grid-template-columns:130px 1fr auto;gap:8px;margin-top:14px}.mp-review-form select,.mp-review-form input{border:1px solid #ddd8d0;border-radius:9px;padding:10px;font-size:14px}.mp-detail-related{margin-top:20px}.mp-detail-related>div{display:flex;gap:12px;overflow:auto;padding-bottom:5px}.mp-detail-related a{width:150px;flex:0 0 150px;color:inherit}.mp-detail-related a>span{height:130px;border:1px solid #ece7df;border-radius:12px;display:grid;place-items:center;overflow:hidden}.mp-detail-related img{width:100%;height:100%;object-fit:contain}.mp-detail-related a strong{display:block;font-size:13px;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-detail-related a b{font-size:14px;color:#0b6544}.mp-detail-cta{position:fixed;z-index:47;bottom:64px;left:50%;transform:translateX(-50%);width:min(860px,100%);min-height:82px;background:rgba(255,253,249,.98);border:1px solid #e9e3db;border-radius:20px 20px 0 0;padding:12px 20px;display:flex;align-items:center;gap:18px;box-shadow:0 -8px 25px rgba(39,32,23,.08)}.mp-detail-cta>div{min-width:145px}.mp-detail-cta small{display:block;font-size:12px}.mp-detail-cta strong{font-size:24px}.mp-detail-cta del{font-size:13px;color:#757575;margin-left:6px}.mp-detail-cta>.mp-btn{flex:1;height:52px;font-size:17px;border-radius:15px;background:#08613f}.mp-service-hero{height:330px;border-radius:18px;overflow:hidden;background:#f2f6ef;margin-top:15px}.mp-service-hero img{width:100%;height:100%;object-fit:cover}.mp-service-summary{display:flex;justify-content:space-between;gap:18px;padding:22px 16px 10px}.mp-service-starting{text-align:right;flex:0 0 auto}.mp-service-starting span{font-size:13px}.mp-service-starting strong{display:block;font-size:29px}.mp-service-facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e9e3db;border-radius:15px;margin:12px 0 0;padding:15px}.mp-service-facts div{display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px}.mp-service-facts svg{color:#0b6544}.mp-date-row,.mp-time-row{display:flex;gap:9px;overflow:auto}.mp-date-row button{min-width:102px;min-height:72px;border:1px solid #dfd9d1;border-radius:13px;padding:8px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px}.mp-date-row button.is-active,.mp-time-row button.is-active{background:#0b6544;color:#fff;border-color:#0b6544}.mp-time-row{flex-wrap:wrap;margin-top:14px}.mp-time-row button{min-width:145px;border:1px solid #dfd9d1;border-radius:11px;padding:11px 15px;font-size:14px}.mp-service-info-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:22px}.mp-service-info-grid>div+div{border-left:1px solid #eee8df;padding-left:22px}.mp-service-info-grid li{display:flex;gap:8px;font-size:14px;margin:7px 0}.mp-service-info-grid li svg{width:18px;color:#0b6544;flex:none}.mp-book-sheet{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center}.mp-book-sheet__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}.mp-book-sheet>section{position:relative;background:#fffdf9;width:min(620px,100%);border-radius:24px 24px 0 0;padding:22px 22px calc(22px + env(safe-area-inset-bottom));max-height:92vh;overflow:auto}.mp-book-sheet header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.mp-book-sheet header h2{font-size:20px;font-weight:750}.mp-book-sheet header button{width:38px;height:38px;display:grid;place-items:center}.mp-book-sheet form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mp-book-sheet label{font-size:13px;font-weight:700}.mp-book-sheet label:nth-child(n+3){grid-column:1/-1}.mp-book-sheet input,.mp-book-sheet textarea{display:block;width:100%;border:1px solid #ddd8d0;border-radius:10px;padding:11px;margin-top:5px;font-size:15px}.mp-book-sheet textarea{min-height:75px}.mp-book-sheet__error{grid-column:1/-1;color:#d33;font-size:13px}.mp-book-sheet form>.mp-btn{grid-column:1/-1}
@media(max-width:700px){.mp-detail-page{padding-bottom:144px}.mp-detail-header{height:68px;grid-template-columns:36px 105px minmax(72px,1fr) 38px;padding:8px 14px;gap:6px}.mp-detail-header__brand img{width:100px}.mp-detail-header__location{font-size:12px;gap:4px}.mp-detail-header__location svg{width:18px}.mp-detail-header__location span{max-width:105px}.mp-detail-body{padding:0 14px 18px}.mp-product-hero{display:block;padding-top:10px}.mp-product-gallery__main{height:340px}.mp-product-gallery__main>img{padding:12px}.mp-product-summary{padding:18px 4px 0}.mp-product-summary h1,.mp-service-summary h1{font-size:22px}.mp-detail-price strong{font-size:27px}.mp-highlight-grid{grid-template-columns:repeat(2,1fr)}.mp-review-form{grid-template-columns:1fr}.mp-service-hero{height:260px}.mp-service-summary{padding:18px 4px 9px}.mp-service-facts{grid-template-columns:repeat(3,1fr);padding:12px 5px}.mp-service-facts div{font-size:12px;flex-direction:column;text-align:center}.mp-service-info-grid{grid-template-columns:1fr}.mp-service-info-grid>div+div{border:0;border-top:1px solid #eee8df;padding:17px 0 0}.mp-detail-cta{padding:10px 14px;min-height:76px}.mp-detail-cta>div{min-width:105px}.mp-detail-cta strong{font-size:21px}.mp-detail-cta>.mp-btn{height:50px}.mp-book-sheet form{grid-template-columns:1fr}.mp-book-sheet label{grid-column:1/-1}}
@media(max-width:360px){.mp-detail-header{grid-template-columns:32px 90px minmax(55px,1fr) 34px;padding-inline:10px}.mp-detail-header__brand img{width:88px}.mp-detail-header__location span{max-width:72px}.mp-product-gallery__main{height:290px}.mp-detail-card,.mp-slot-section,.mp-service-info-grid,.mp-seller-card{padding:14px}.mp-detail-cta>div{min-width:88px}.mp-detail-cta strong{font-size:19px}}
@media (min-width:361px) and (max-width:700px){.mp-product-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;align-items:start}.mp-product-gallery__main{height:285px}.mp-product-gallery__main>img{padding:10px}.mp-product-summary{padding:26px 0 0}}

/* Reference-matched compact native detail screens (360–480 px). */
.mp-gallery-more{display:grid!important;place-items:center;color:#303632;font-size:13px;font-weight:750;background:#eef1ec!important}
.mp-service-bottom-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}
.mp-service-bottom-grid>.mp-detail-card{margin-top:12px}
.mp-guarantee-card{display:flex;align-items:center;gap:10px}
.mp-guarantee-card>svg{width:40px;height:40px;flex:none;padding:9px;border-radius:50%;color:#075536;background:#eef5e9}
.mp-guarantee-card h2{margin-bottom:3px}
.mp-guarantee-card p{color:#4f5652;font-size:12px;line-height:1.45}

@media(max-width:700px){
    .mp-detail-page{width:100%;max-width:480px;padding-bottom:132px;background:#fffdfa}
    .mp-detail-header{height:62px;grid-template-columns:30px 92px minmax(80px,1fr) 34px;gap:6px;padding:7px 12px}
    .mp-detail-header__back,.mp-detail-header__cart{width:32px;height:32px}
    .mp-detail-header__brand img{width:88px;max-height:32px}
    .mp-detail-header__location{justify-content:flex-start;font-size:10.5px;line-height:1.2}
    .mp-detail-header__location span{max-width:102px;white-space:normal}
    .mp-detail-header__location svg{width:16px;height:16px;flex:none}
    .mp-detail-header__location svg:last-child{width:12px}
    .mp-detail-header__cart>span{min-width:16px;height:16px;font-size:9px}
    .mp-detail-body{padding:0 12px 16px}

    .mp-product-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:11px;align-items:start;padding-top:10px}
    .mp-product-gallery__main{height:clamp(184px,50vw,218px);border-radius:10px}
    .mp-product-gallery__main>img{padding:8px}
    .mp-wishlist{right:7px;top:7px;width:29px;height:29px}
    .mp-wishlist svg{width:16px}
    .mp-product-gallery__thumbs{gap:5px;margin-top:6px}
    .mp-product-gallery__thumbs button{width:39px;height:39px;flex-basis:39px;border-radius:6px}
    .mp-product-summary{padding:28px 0 0}
    .mp-product-summary .mp-detail-kicker{display:none}
    .mp-product-summary h1,.mp-service-summary h1{font-size:17px;line-height:1.24;letter-spacing:-.02em}
    .mp-detail-muted{font-size:11px;line-height:1.4}
    .mp-detail-rating{gap:4px;margin-top:8px;font-size:10.5px}
    .mp-detail-rating svg{width:18px;height:18px;padding:3px}
    .mp-detail-price{gap:6px;margin-top:12px;flex-wrap:wrap}
    .mp-detail-price strong{font-size:23px;line-height:1}
    .mp-detail-price del{font-size:11px}
    .mp-detail-price span{padding:5px 7px;border-radius:6px;font-size:10px}
    .mp-variant-group{margin-top:9px}
    .mp-variant-group legend{margin-bottom:5px;font-size:11px}
    .mp-variant-group>div{gap:5px}
    .mp-variant-group button{min-height:29px;padding:5px 8px;border-radius:7px;font-size:10.5px}
    .mp-color-dot{width:12px;height:12px}
    .mp-quantity{justify-content:flex-start;margin-top:10px}
    .mp-quantity>span{display:none}
    .mp-stepper{height:34px}
    .mp-stepper button{width:35px;font-size:16px}
    .mp-stepper span{min-width:36px;font-size:12px}
    .mp-delivery-card{gap:7px;margin-top:9px;padding:8px;border-radius:8px}
    .mp-delivery-card svg{width:20px}
    .mp-delivery-card strong{font-size:10.5px}
    .mp-delivery-card small{font-size:8.5px}

    .mp-seller-card,.mp-detail-card,.mp-slot-section,.mp-service-info-grid{margin-top:10px;padding:10px;border-radius:11px}
    .mp-seller-card{gap:8px}
    .mp-seller-card>img,.mp-seller-card>span{width:34px;height:34px}
    .mp-seller-card strong{font-size:12px}
    .mp-seller-card small,.mp-seller-card>b{font-size:10px}
    .mp-seller-card strong svg{width:13px}
    .mp-detail-card h2,.mp-slot-section h2,.mp-service-info-grid h2,.mp-detail-related h2{margin-bottom:9px;font-size:14px}
    .mp-highlight-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
    .mp-highlight-grid div{gap:5px;font-size:9px;line-height:1.25}
    .mp-highlight-grid svg{width:22px;height:22px}
    .mp-detail-copy{font-size:11px;line-height:1.55}
    .mp-review-summary{grid-template-columns:86px 1fr;gap:8px}
    .mp-review-summary>div:first-child strong{font-size:25px}
    .mp-review-summary>div:first-child span{font-size:9px}
    .mp-review-summary p{grid-template-columns:28px 1fr 22px;gap:5px;margin:2px 0;font-size:9px}
    .mp-review-list article{padding:8px 0}
    .mp-review-list article>strong,.mp-review-list article>span{font-size:10px}
    .mp-review-list article p{margin-top:3px;font-size:10.5px}
    .mp-review-form{gap:6px;margin-top:8px}
    .mp-review-form select,.mp-review-form input{padding:8px;font-size:11px}
    .mp-detail-related{margin-top:12px}
    .mp-detail-related>div{gap:7px}
    .mp-detail-related a{width:78px;flex-basis:78px}
    .mp-detail-related a>span{height:82px;border-radius:8px}
    .mp-detail-related a strong{margin-top:4px;font-size:9.5px}
    .mp-detail-related a b{font-size:10.5px}

    .mp-service-hero{height:clamp(180px,46vw,208px);margin-top:10px;border-radius:11px}
    .mp-service-summary{gap:10px;padding:12px 8px 6px}
    .mp-service-summary .mp-detail-kicker{margin-bottom:3px;font-size:9px}
    .mp-service-summary .mp-detail-rating{margin-top:7px}
    .mp-service-starting span{font-size:10px}
    .mp-service-starting strong{font-size:22px}
    .mp-service-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:7px;padding:9px 4px;border-radius:10px}
    .mp-service-facts div{gap:4px;flex-direction:row;justify-content:center;font-size:8.5px;line-height:1.25;text-align:left}
    .mp-service-facts svg{width:19px;height:19px;flex:none}
    .mp-date-row,.mp-time-row{gap:6px}
    .mp-date-row button{min-width:64px;min-height:49px;padding:5px;border-radius:8px;font-size:9px}
    .mp-date-row button svg{width:15px}
    .mp-time-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:8px}
    .mp-time-row button{min-width:0;padding:8px 3px;border-radius:8px;font-size:9.5px}
    .mp-service-info-grid{grid-template-columns:1fr 1.15fr;gap:12px}
    .mp-service-info-grid>div+div{padding:0 0 0 12px;border:0;border-left:1px solid #eee8df}
    .mp-service-info-grid li{gap:5px;margin:4px 0;font-size:10px}
    .mp-service-info-grid li svg{width:13px;height:13px}
    .mp-service-bottom-grid{grid-template-columns:1.2fr .8fr;gap:8px}
    .mp-service-bottom-grid>.mp-detail-card{margin-top:10px}
    .mp-guarantee-card{gap:7px}
    .mp-guarantee-card>svg{width:32px;height:32px;padding:7px}
    .mp-guarantee-card p{font-size:9.5px}

    .mp-detail-cta{bottom:64px;width:min(480px,100%);min-height:64px;gap:10px;padding:8px 12px;border-radius:14px 14px 0 0}
    .mp-detail-cta>div{min-width:96px}
    .mp-detail-cta small{font-size:9px}
    .mp-detail-cta strong{font-size:19px}
    .mp-detail-cta del{font-size:10px}
    .mp-detail-cta>.mp-btn{height:43px;border-radius:11px;font-size:14px}
}

@media(max-width:359px){
    .mp-detail-header{grid-template-columns:28px 80px minmax(70px,1fr) 32px;padding-inline:9px}
    .mp-detail-header__brand img{width:78px}
    .mp-product-hero{gap:8px}
    .mp-product-summary{padding-top:18px}
    .mp-product-summary h1,.mp-service-summary h1{font-size:15px}
    .mp-detail-price strong{font-size:20px}
    .mp-service-facts div{flex-direction:column;text-align:center}
}

/* Reference-matched marketplace cart */
.mp-cart-v2{width:100%;max-width:480px;min-height:calc(100vh - 64px);margin:0 auto;padding:0 12px 150px;background:#fffdfa;color:#151716}
.mp-cart-titlebar{height:58px;display:flex;align-items:center;gap:11px}
.mp-cart-titlebar>a{width:31px;height:31px;display:grid;place-items:center;border:1px solid #e6e3dd;border-radius:50%;background:#fff}
.mp-cart-titlebar>a svg{width:17px}
.mp-cart-titlebar h1{font-size:20px;font-weight:800;letter-spacing:-.025em}
.mp-cart-titlebar>span{display:flex;align-items:center;gap:5px;margin-left:5px;padding:7px 9px;border-radius:7px;background:#eef5e9;color:#195d3e;font-size:10px;font-weight:650}
.mp-cart-titlebar>span svg{width:14px;height:14px}
.mp-delivery-progress{padding:11px 12px;border:1px solid #d6dfcb;border-radius:13px;background:linear-gradient(100deg,#f7faef,#fbfcf6)}
.mp-delivery-progress>div{display:flex;align-items:center;gap:9px;color:#155c3e}
.mp-delivery-progress svg{width:20px;flex:none}
.mp-delivery-progress p{flex:1;font-size:10.5px}.mp-delivery-progress p strong{font-weight:800}
.mp-delivery-progress b{color:#222;font-size:10px}
.mp-delivery-progress>span{height:6px;display:block;margin:7px 40px 0 29px;overflow:hidden;border-radius:99px;background:#d9e3d4}
.mp-delivery-progress>span i{height:100%;display:block;border-radius:inherit;background:#238044}
.mp-cart-stores{display:grid;gap:10px;margin-top:10px}
.mp-cart-store{overflow:hidden;border:1px solid #e8e4de;border-radius:15px;background:#fff;box-shadow:0 4px 16px rgba(45,38,27,.025)}
.mp-cart-store__head{display:flex;align-items:center;gap:10px;padding:9px 11px;color:inherit}
.mp-cart-store__head>img,.mp-cart-store__head>span{width:58px;height:46px;display:grid;place-items:center;border-radius:8px;background:#075536;color:#fff;object-fit:cover;font-size:18px;font-weight:850}
.mp-cart-store__head>div{min-width:0;flex:1}.mp-cart-store__head h2{overflow:hidden;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.mp-cart-store__head p{display:flex;align-items:center;gap:8px;margin-top:3px;color:#555b58;font-size:9.5px}
.mp-cart-store__head p b{display:inline-flex;align-items:center;gap:3px;padding:2px 4px;border-radius:4px;background:#23952c;color:#fff}.mp-cart-store__head p svg{width:10px;height:10px;fill:#fff}
.mp-cart-store__head>svg{width:15px;color:#777}
.mp-cart-line{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:9px;padding:9px 11px 0}
.mp-cart-line+.mp-cart-line{border-top:1px solid #eee9e2}
.mp-cart-line__image{width:62px;height:62px;display:grid;place-items:center;overflow:hidden;border:1px solid #ebe7e0;border-radius:8px;background:#fff}
.mp-cart-line__image img{width:100%;height:100%;padding:3px;object-fit:contain}.mp-cart-line__image svg{width:23px;color:#075536}
.mp-cart-line__copy{min-width:0}.mp-cart-line__copy h3{display:-webkit-box;overflow:hidden;font-size:12px;font-weight:750;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.mp-cart-line__copy p{margin-top:2px;color:#777;font-size:9.5px}.mp-cart-line__copy>div{display:flex;align-items:center;gap:6px;margin-top:4px}
.mp-cart-line__copy strong{font-size:13px}.mp-cart-line__copy del{color:#777;font-size:10px}.mp-cart-line__copy b{color:#158139;font-size:9px}
.mp-cart-stepper{height:34px;display:flex;align-items:center;align-self:center;overflow:hidden;border:1px solid #83a378;border-radius:8px}
.mp-cart-stepper button{width:31px;height:100%;color:#075536;font-size:17px}.mp-cart-stepper span{min-width:27px;text-align:center;font-size:13px;font-weight:650}
.mp-cart-line__actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;margin-top:2px;border-top:1px solid #eee9e2}
.mp-cart-line__actions button{min-height:34px;display:flex;align-items:center;gap:7px;padding-left:5px;font-size:9.5px;text-align:left}.mp-cart-line__actions button+button{justify-content:flex-end;padding-right:5px}.mp-cart-line__actions svg{width:14px}
.mp-cart-action{margin-top:8px;border:1px solid #e8e4de;border-radius:10px;background:#fff;overflow:hidden}
.mp-cart-action>button{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;padding:7px 10px;text-align:left}.mp-cart-action>button>svg:first-child{width:21px;color:#075536}.mp-cart-action>button>span{flex:1;font-size:11px;font-weight:700}.mp-cart-action>button>span small{display:block;color:#777;font-size:8.5px;font-weight:500}.mp-cart-action>button>svg:last-child{width:15px;transition:transform .15s}.mp-cart-action.is-open>button>svg:last-child{transform:rotate(90deg)}
.mp-wallet-action.is-selected{border-color:#9bc0aa;background:#f3f8f2}.mp-wallet-action>button>b{color:#137a39;font-size:9.5px;white-space:nowrap}
.mp-coupon-panel{padding:0 10px 10px;border-top:1px solid #eee9e2}.mp-coupon-panel form{display:grid;grid-template-columns:1fr 72px;gap:7px;margin-top:9px}.mp-coupon-panel input{height:35px;padding:0 10px;border:1px solid #ddd8d0;border-radius:8px;font-size:11px}.mp-coupon-panel form button{height:35px;border-radius:8px;font-size:10px}.mp-coupon-panel>div{display:flex;gap:5px;overflow:auto;margin-top:7px}.mp-coupon-panel>div button{padding:5px 7px;border:1px dashed #79a68a;border-radius:6px;color:#075536;font-size:8.5px;font-weight:750}.mp-coupon-remove{margin-top:7px;color:#c4463a;font-size:9px;font-weight:700}
.mp-cart-bill{margin-top:8px;padding:9px 10px;border:1px solid #e8e4de;border-radius:11px;background:#fff}.mp-cart-bill h2{margin-bottom:5px;font-size:13px;font-weight:800}.mp-cart-bill dl>div{display:flex;align-items:center;justify-content:space-between;min-height:20px;color:#555;font-size:10px}.mp-cart-bill dt{display:flex;align-items:center;gap:4px}.mp-cart-bill dt svg{width:11px}.mp-cart-bill dd del{margin-right:5px;color:#888}.mp-cart-bill dd b,.mp-cart-bill dd.is-saving{color:#137a39}.mp-cart-bill__total{min-height:31px!important;margin-top:4px;padding-top:5px;border-top:1px solid #eee9e2;color:#111!important;font-size:14px!important;font-weight:800}
.mp-saved-cart{margin-top:10px;padding:10px;border:1px solid #e8e4de;border-radius:12px;background:#fff}.mp-saved-cart h2{font-size:13px;font-weight:800}.mp-saved-cart h2 span{color:#777;font-size:10px}.mp-saved-cart article{display:grid;grid-template-columns:44px 1fr auto 24px;align-items:center;gap:7px;padding:8px 0}.mp-saved-cart article+article{border-top:1px solid #eee9e2}.mp-saved-cart article>img,.mp-saved-cart article>span{width:44px;height:44px;display:grid;place-items:center;border-radius:7px;object-fit:contain}.mp-saved-cart article>div{min-width:0}.mp-saved-cart article strong,.mp-saved-cart article small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-saved-cart article strong{font-size:10.5px}.mp-saved-cart article small{color:#777;font-size:9px}.mp-saved-cart article button{color:#075536;font-size:9px;font-weight:750}.mp-saved-cart article button:last-child svg{width:14px}
.mp-cart-empty{min-height:430px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.mp-cart-empty>span{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#eef5e9;color:#075536}.mp-cart-empty>span svg{width:34px}.mp-cart-empty h2{margin-top:14px;font-size:17px;font-weight:800}.mp-cart-empty p{max-width:280px;margin-top:4px;color:#777;font-size:11px}.mp-cart-empty a{margin-top:17px;padding:10px 24px}
.mp-cart-checkout{position:fixed;z-index:52;left:50%;bottom:64px;width:min(480px,100%);padding:7px 12px;background:rgba(255,253,250,.97);border-top:1px solid #eee8df;transform:translateX(-50%);backdrop-filter:blur(10px)}
.mp-cart-checkout a{height:48px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:15px;background:#075536;color:#fff;font-size:15px;font-weight:750}.mp-cart-checkout a span{font-size:11px}
@media(min-width:600px){.mp-cart-v2{padding-top:8px}.mp-cart-titlebar h1{font-size:22px}}
@media(max-width:359px){.mp-cart-v2{padding-inline:9px}.mp-cart-line{grid-template-columns:56px minmax(0,1fr) auto;padding-inline:8px}.mp-cart-line__image{width:56px;height:56px}.mp-cart-stepper button{width:27px}.mp-cart-stepper span{min-width:23px}.mp-cart-store__head>img,.mp-cart-store__head>span{width:50px}.mp-cart-titlebar>span{font-size:9px}}
