:root {
    --marketplace-green: var(--theme-color, #2ea80b);
    --marketplace-green-dark: #17720a;
    --marketplace-green-soft: #edf9e9;
    --marketplace-text: #172136;
    --marketplace-muted: #6d778c;
    --marketplace-line: #e5e9ef;
    --marketplace-bg: #f6f8fa;
    --marketplace-card: #ffffff;
    --marketplace-radius: 14px;
    --marketplace-shadow: 0 10px 30px rgba(27, 53, 39, .08);
}

.marketplace-commerce {
    min-width: 320px;
    overflow-x: hidden;
    background: var(--marketplace-bg);
    color: var(--marketplace-text);
    font-family: var(--theme-font), Arial, sans-serif;
}

.marketplace-commerce .body__overlay,
.marketplace-commerce .offset__wrapper,
.marketplace-commerce .hamburger,
.marketplace-commerce #scrolltotop {
    display: none !important;
}

.marketplace-commerce *,
.marketplace-commerce *::before,
.marketplace-commerce *::after {
    box-sizing: border-box;
}

.marketplace-commerce a:hover { text-decoration: none; }
.marketplace-commerce button:focus-visible,
.marketplace-commerce a:focus-visible,
.marketplace-commerce select:focus-visible,
.marketplace-commerce input:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--marketplace-green) 25%, transparent);
    outline-offset: 2px;
}

.marketplace-shell {
    width: min(1460px, calc(100% - 32px));
    margin-inline: auto;
}

.marketplace-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    border-bottom: 1px solid var(--marketplace-line);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 4px 20px rgba(39, 55, 47, .04);
    backdrop-filter: blur(14px);
}

.marketplace-header__primary {
    display: grid;
    grid-template-columns: 220px minmax(360px, 1fr) auto;
    align-items: center;
    min-height: 74px;
    gap: 28px;
}

.marketplace-brand {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    color: var(--marketplace-green-dark);
}

.marketplace-brand img {
    display: block;
    width: auto;
    max-width: 190px;
    height: 48px;
    object-fit: contain;
}

.marketplace-brand__mark {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 50% 50% 44% 56%;
    background: linear-gradient(145deg, #58c62f, #198608);
    color: #fff;
    font-size: 21px;
    font-weight: 800;
    transform: rotate(-8deg);
}

.marketplace-brand__mark span { transform: rotate(8deg); }
.marketplace-brand__name { font-size: 22px; font-weight: 750; line-height: 1; white-space: nowrap; }
.marketplace-brand__name small { padding: 2px 5px; border-radius: 4px; background: var(--marketplace-green); color: #fff; font-size: 9px; vertical-align: top; }

.marketplace-search {
    position: relative;
    display: flex;
    min-width: 0;
    height: 46px;
    align-items: center;
    border: 1px solid #d8dfda;
    border-radius: 10px;
    background: #fff;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.marketplace-search:focus-within {
    border-color: var(--marketplace-green);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--marketplace-green) 10%, transparent);
}

.marketplace-search__icon { margin-left: 14px; color: var(--marketplace-green); font-size: 22px; }
.marketplace-search__field { position: relative; min-width: 0; flex: 1; }
.marketplace-search input {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--marketplace-text);
    font-size: 14px;
}

.marketplace-search__submit {
    display: inline-flex;
    align-self: stretch;
    min-width: 112px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin: -1px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--marketplace-green), var(--marketplace-green-dark));
    color: #fff;
    font-weight: 700;
}

.marketplace-search__submit .material-symbols-outlined { font-size: 20px; }
.marketplace-search .search_result { top: calc(100% + 8px); left: -35px; width: calc(100% + 35px); max-height: 360px; border-radius: 12px; box-shadow: var(--marketplace-shadow); }

.marketplace-header__actions {
    display: flex;
    align-items: stretch;
    gap: 6px;
}

.marketplace-header__actions > a {
    position: relative;
    display: flex;
    min-width: 78px;
    height: 54px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    border-radius: 10px;
    color: #2d3543;
    font-size: 11px;
    font-weight: 600;
}

.marketplace-header__actions > a:hover { background: var(--marketplace-green-soft); color: var(--marketplace-green-dark); }
.marketplace-header__actions .material-symbols-outlined { font-size: 25px; }
.marketplace-header__actions .cart_qty,
.marketplace-bottom-nav .cart_qty,
.marketplace-mobile-menu__quick .cart_qty {
    position: absolute;
    top: 1px;
    right: 10px;
    display: grid;
    min-width: 19px;
    height: 19px;
    padding: 0 5px;
    place-items: center;
    border-radius: 999px;
    background: var(--marketplace-green);
    color: #fff;
    font-size: 10px;
}

.marketplace-header__menu { display: none !important; }
.marketplace-icon-button {
    display: inline-grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    border: 1px solid var(--marketplace-line);
    border-radius: 10px;
    background: #fff;
    color: var(--marketplace-text);
}

.marketplace-header__secondary { border-top: 1px solid #eef1ef; }
.marketplace-header__secondary .marketplace-shell { display: flex; min-height: 46px; align-items: center; gap: 18px; }
.marketplace-catalog-button {
    display: inline-flex;
    width: 180px;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 0;
    border-radius: 9px;
    background: var(--marketplace-green);
    color: #fff;
    font-weight: 700;
}

.marketplace-header__categories {
    display: flex;
    min-width: 0;
    flex: 1;
    align-items: center;
    gap: 2px;
    overflow: hidden;
}

.marketplace-header__categories a { flex: 0 0 auto; padding: 12px 13px; color: #4d5768; font-size: 12px; font-weight: 600; white-space: nowrap; }
.marketplace-header__categories a:hover,
.marketplace-header__categories a.active { color: var(--marketplace-green-dark); }
.marketplace-header__promise { display: inline-flex; align-items: center; gap: 8px; color: var(--marketplace-green-dark); font-size: 12px; white-space: nowrap; }
.marketplace-header__promise .material-symbols-outlined { font-size: 20px; }

.marketplace-main { padding: 18px 0 64px; }
.marketplace-home-layout { display: grid; grid-template-columns: 258px minmax(0, 1fr); gap: 18px; align-items: start; }
.marketplace-content { min-width: 0; }

.marketplace-sidebar {
    position: sticky;
    top: 138px;
    overflow: hidden;
    border: 1px solid var(--marketplace-line);
    border-radius: var(--marketplace-radius);
    background: #fff;
    box-shadow: 0 4px 18px rgba(36, 55, 45, .04);
}

.marketplace-sidebar h2 { margin: 0; padding: 18px 18px 9px; font-size: 19px; font-weight: 750; }
.marketplace-sidebar nav { padding: 0 8px 10px; }
.marketplace-sidebar nav a {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    min-height: 37px;
    align-items: center;
    gap: 9px;
    padding: 7px 10px;
    border-radius: 8px;
    color: #4e5869;
    font-size: 12px;
}

.marketplace-sidebar nav a:hover,
.marketplace-sidebar nav a.active { background: var(--marketplace-green-soft); color: var(--marketplace-green-dark); font-weight: 650; }
.marketplace-sidebar nav .material-symbols-outlined { font-size: 18px; }
.marketplace-sidebar nav small { color: #929aaa; font-size: 10px; }
.marketplace-sidebar__eco { display: grid; grid-template-columns: 38px 1fr 20px; align-items: center; gap: 10px; margin: 8px; padding: 15px 12px; border-radius: 10px; background: linear-gradient(135deg, #eef8e9, #f8fbf6); color: var(--marketplace-green-dark); }
.marketplace-sidebar__eco > .material-symbols-outlined:first-child { font-size: 35px; }
.marketplace-sidebar__eco strong,
.marketplace-sidebar__eco small { display: block; }
.marketplace-sidebar__eco strong { font-size: 12px; line-height: 1.25; }
.marketplace-sidebar__eco small { margin-top: 5px; color: #657464; font-size: 9px; line-height: 1.3; }

.marketplace-hero {
    min-height: 250px;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid #dfe9dc;
    border-radius: var(--marketplace-radius);
    background: #eaf7e5;
    box-shadow: 0 5px 22px rgba(30, 96, 18, .06);
}

.marketplace-hero .carousel,
.marketplace-hero .carousel-inner,
.marketplace-hero .carousel-item { height: 250px; }
.marketplace-hero .carousel-item img { width: 100%; height: 100%; object-fit: cover; }
.marketplace-hero .carousel-control-prev,
.marketplace-hero .carousel-control-next { width: 44px; height: 44px; top: 50%; margin: -22px 12px 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .85); color: var(--marketplace-green-dark); opacity: 1; }

.marketplace-hero__fallback { position: relative; display: grid; min-height: 250px; grid-template-columns: minmax(0, 1.15fr) .8fr 180px; overflow: hidden; background: radial-gradient(circle at 72% 20%, rgba(255,255,255,.95), transparent 30%), linear-gradient(112deg, #ecf9e7 0%, #f8fbf3 55%, #d9f1cd 100%); }
.marketplace-hero__copy { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 30px 40px; }
.marketplace-hero__copy > span { color: var(--marketplace-green-dark); font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.marketplace-hero__copy h1 { max-width: 500px; margin: 7px 0 8px; color: #175f11; font-size: clamp(29px, 3.2vw, 48px); font-weight: 800; line-height: 1.02; letter-spacing: -.04em; }
.marketplace-hero__copy p { max-width: 470px; margin: 0 0 17px; color: #536354; font-size: 14px; line-height: 1.45; }
.marketplace-hero__copy a { display: inline-flex; min-height: 42px; align-items: center; gap: 9px; padding: 0 18px; border-radius: 9px; background: var(--marketplace-green); color: #fff; font-size: 13px; font-weight: 700; }
.marketplace-hero__copy a .material-symbols-outlined { font-size: 19px; }
.marketplace-hero__art { position: relative; display: grid; place-items: center; }
.marketplace-hero__family { position: relative; z-index: 1; display: grid; width: 190px; height: 190px; place-items: center; border: 10px solid rgba(255,255,255,.72); border-radius: 50%; background: linear-gradient(145deg, #f9d9b8, #f7efe1); box-shadow: 0 18px 45px rgba(55, 99, 36, .18); color: #558650; }
.marketplace-hero__family .material-symbols-outlined { font-size: 74px; font-variation-settings: 'FILL' 1; }
.marketplace-hero__leaf { position: absolute; color: #67ad43; font-family: 'Material Symbols Outlined'; font-size: 70px; transform: rotate(-24deg); }
.marketplace-hero__leaf--one { left: 4%; top: 8%; }
.marketplace-hero__leaf--two { right: -6%; bottom: 0; font-size: 92px; transform: rotate(24deg); }
.marketplace-hero__values { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; gap: 17px; margin: 0; padding: 18px 24px 18px 0; list-style: none; }
.marketplace-hero__values li { display: flex; align-items: center; gap: 10px; color: #32443a; font-size: 11px; font-weight: 650; line-height: 1.2; }
.marketplace-hero__values .material-symbols-outlined { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 50%; background: rgba(255,255,255,.86); color: var(--marketplace-green); font-size: 22px; box-shadow: 0 6px 18px rgba(65, 110, 52, .11); }

.marketplace-benefits { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 12px; padding: 0 !important; overflow: hidden; border: 1px solid var(--marketplace-line); border-radius: 12px; background: #fff; }
.marketplace-benefits > div { display: flex; min-width: 0; min-height: 66px; align-items: center; gap: 12px; padding: 11px 18px; border-right: 1px solid var(--marketplace-line); }
.marketplace-benefits > div:last-child { border-right: 0; }
.marketplace-benefits .material-symbols-outlined { color: var(--marketplace-green); font-size: 28px; }
.marketplace-benefits p { min-width: 0; margin: 0; }
.marketplace-benefits strong,
.marketplace-benefits small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.marketplace-benefits strong { color: #2b3443; font-size: 11px; }
.marketplace-benefits small { margin-top: 2px; color: var(--marketplace-muted); font-size: 10px; }

.marketplace-catalog { padding: 18px 0 0 !important; scroll-margin-top: 140px; }
.marketplace-catalog__heading { display: flex; min-height: 58px; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.marketplace-catalog__heading h2 { margin: 0; font-size: 25px; font-weight: 800; letter-spacing: -.025em; }
.marketplace-catalog__heading p { margin: 3px 0 0; color: var(--marketplace-muted); font-size: 11px; }
.marketplace-sort { display: flex; align-items: center; gap: 7px; }
.marketplace-sort label { margin: 0; color: var(--marketplace-muted); font-size: 11px; }
.marketplace-sort select { height: 40px; padding: 0 35px 0 12px; border: 1px solid var(--marketplace-line); border-radius: 9px; background: #fff; color: #3c4655; font-size: 12px; }
.marketplace-view-button { display: grid; width: 40px; height: 40px; padding: 0; place-items: center; border: 1px solid var(--marketplace-line); border-radius: 9px; background: #fff; color: #657083; }
.marketplace-view-button.active { border-color: var(--marketplace-green); background: var(--marketplace-green); color: #fff; }
.marketplace-view-button .material-symbols-outlined { font-size: 20px; }

.marketplace-category-chips { display: none; gap: 8px; margin: 0 0 14px; overflow-x: auto; scrollbar-width: none; }
.marketplace-category-chips::-webkit-scrollbar { display: none; }
.marketplace-category-chips a { flex: 0 0 auto; padding: 8px 12px; border: 1px solid var(--marketplace-line); border-radius: 999px; background: #fff; color: #566071; font-size: 12px; white-space: nowrap; }
.marketplace-category-chips a.active { border-color: var(--marketplace-green); background: var(--marketplace-green-soft); color: var(--marketplace-green-dark); font-weight: 650; }

.marketplace-product-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.marketplace-product-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid var(--marketplace-line); border-radius: 12px; background: #fff; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.marketplace-product-card:hover { border-color: #cfd9ce; box-shadow: var(--marketplace-shadow); transform: translateY(-3px); }
.marketplace-product-card.is-unavailable { opacity: .78; }
.marketplace-product-card__media { position: relative; display: flex; aspect-ratio: 1.1 / 1; align-items: center; justify-content: center; overflow: hidden; background: linear-gradient(180deg, #fff, #fafcf9); }
.marketplace-product-card__media > a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; padding: 20px; }
.marketplace-product-card__media img { display: block; width: 100%; height: 100%; object-fit: contain; transition: transform .2s ease; }
.marketplace-product-card:hover .marketplace-product-card__media img { transform: scale(1.035); }
.marketplace-product-card__badge { position: absolute; top: 9px; left: 9px; z-index: 1; padding: 4px 8px; border-radius: 999px; background: #e6f7df; color: var(--marketplace-green-dark); font-size: 9px; font-weight: 700; }
.marketplace-product-card.is-unavailable .marketplace-product-card__badge { background: #f0f2f4; color: #6f7783; }
.marketplace-product-card__body { display: flex; min-height: 200px; flex: 1; flex-direction: column; padding: 12px; }
.marketplace-product-card__name { display: -webkit-box; min-height: 42px; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #293242; font-size: 12px; font-weight: 600; line-height: 1.45; }
.marketplace-product-card__name:hover { color: var(--marketplace-green-dark); }
.marketplace-product-card__body > small { margin-top: 5px; overflow: hidden; color: #929aaa; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.marketplace-product-card__body > strong { margin-top: 8px; color: var(--marketplace-green-dark); font-size: 16px; }
.marketplace-product-card__stock { margin: 2px 0 10px; color: #4e9b45; font-size: 9px; line-height: 1.3; }
.marketplace-product-card__body > button,
.marketplace-product-card__details { display: inline-flex; width: 100%; min-height: 40px; align-items: center; justify-content: center; gap: 7px; margin-top: auto; border: 0; border-radius: 8px; background: var(--marketplace-green); color: #fff; font-size: 12px; font-weight: 700; }
.marketplace-product-card__body > button:hover { background: var(--marketplace-green-dark); }
.marketplace-product-card__body > button .material-symbols-outlined { font-size: 18px; }
.marketplace-product-card__details { border: 1px solid var(--marketplace-green); background: #fff; color: var(--marketplace-green-dark); }
.marketplace-product-grid.is-list { grid-template-columns: 1fr; }
.marketplace-product-grid.is-list .marketplace-product-card { display: grid; grid-template-columns: 170px minmax(0, 1fr); }
.marketplace-product-grid.is-list .marketplace-product-card__media { aspect-ratio: auto; min-height: 160px; }
.marketplace-product-grid.is-list .marketplace-product-card__body { min-height: 160px; }

.marketplace-pagination { display: flex; justify-content: center; margin-top: 24px; }
.marketplace-pagination .pagination { display: flex; flex-wrap: wrap; gap: 5px; margin: 0; }
.marketplace-pagination .page-item { margin: 0; }
.marketplace-pagination .page-link { display: grid; min-width: 38px; height: 38px; padding: 0 8px; place-items: center; border-color: var(--marketplace-line); color: #536070; }
.marketplace-pagination .page-item.active .page-link { border-color: var(--marketplace-green); background: var(--marketplace-green); }
.marketplace-empty { grid-column: 1 / -1; padding: 70px 20px; border: 1px dashed #cbd4ca; border-radius: 12px; background: #fff; text-align: center; }
.marketplace-empty > .material-symbols-outlined { color: #93a091; font-size: 44px; }
.marketplace-empty h3 { margin: 12px 0 5px; }
.marketplace-empty p { color: var(--marketplace-muted); }
.marketplace-empty a { display: inline-flex; min-height: 42px; align-items: center; padding: 0 18px; border-radius: 8px; background: var(--marketplace-green); color: #fff; font-weight: 700; }

.marketplace-mobile-menu[hidden],
.marketplace-modal[hidden] { display: none !important; }
.marketplace-mobile-menu { position: fixed; inset: 0; z-index: 1100; display: flex; }
.marketplace-mobile-menu__backdrop { position: absolute; inset: 0; border: 0; background: rgba(15, 24, 18, .55); backdrop-filter: blur(2px); }
.marketplace-mobile-menu__panel { position: relative; display: flex; width: min(370px, 90vw); height: 100%; flex-direction: column; background: #fff; box-shadow: 14px 0 50px rgba(0, 0, 0, .22); }
.marketplace-mobile-menu__header { display: flex; min-height: 76px; align-items: center; justify-content: space-between; padding: 12px 18px; border-bottom: 1px solid var(--marketplace-line); }
.marketplace-mobile-menu__header small,
.marketplace-mobile-menu__header strong { display: block; }
.marketplace-mobile-menu__header small { color: var(--marketplace-green-dark); font-size: 11px; }
.marketplace-mobile-menu__header strong { font-size: 20px; }
.marketplace-mobile-menu__quick { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 14px; border-bottom: 1px solid var(--marketplace-line); }
.marketplace-mobile-menu__quick a { position: relative; display: flex; min-height: 72px; flex-direction: column; align-items: center; justify-content: center; gap: 4px; border-radius: 10px; background: var(--marketplace-bg); color: #374151; font-size: 11px; }
.marketplace-mobile-menu__quick .material-symbols-outlined { color: var(--marketplace-green); }
.marketplace-mobile-menu__categories { min-height: 0; overflow-y: auto; padding: 8px 14px 30px; }
.marketplace-mobile-menu__categories a { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; min-height: 48px; align-items: center; gap: 10px; padding: 6px 8px; border-bottom: 1px solid #f0f2f2; color: #46505e; font-size: 13px; }
.marketplace-mobile-menu__categories a.active { color: var(--marketplace-green-dark); font-weight: 700; }
.marketplace-mobile-menu__categories .material-symbols-outlined { color: var(--marketplace-green); font-size: 20px; }
.marketplace-mobile-menu__categories small { color: #9098a4; }

.marketplace-modal { position: fixed; inset: 0; z-index: 1120; display: grid; padding: 20px; place-items: center; }
.marketplace-modal__backdrop { position: absolute; inset: 0; background: rgba(10, 19, 13, .58); backdrop-filter: blur(3px); }
.marketplace-modal__dialog { position: relative; width: min(620px, 100%); max-height: min(80vh, 760px); overflow: auto; padding: 28px; border-radius: 18px; background: #fff; box-shadow: 0 25px 80px rgba(0,0,0,.22); }
.marketplace-modal__dialog > small { color: var(--marketplace-green-dark); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.marketplace-modal__dialog h3 { margin: 5px 42px 18px 0; font-size: 24px; }
.marketplace-modal__close { position: absolute; top: 15px; right: 15px; display: grid; width: 42px; height: 42px; padding: 0; place-items: center; border: 0; border-radius: 50%; background: #f0f3f1; }
.marketplace-loading { padding: 35px; color: var(--marketplace-muted); text-align: center; }
.marketplace-toast { position: fixed; right: 20px; bottom: 20px; z-index: 1140; display: none; max-width: min(380px, calc(100vw - 40px)); padding: 13px 17px; border-radius: 10px; background: #172136; color: #fff; box-shadow: var(--marketplace-shadow); }

.marketplace-bottom-nav { display: none; }

.marketplace-commerce > a.button.style1[style*="position:fixed"] {
    right: 20px !important;
    bottom: 20px !important;
    z-index: 1010 !important;
    display: inline-flex !important;
    min-height: 54px;
    align-items: center;
    gap: 8px !important;
    padding: 0 18px !important;
    border: 0;
    border-radius: 999px;
    background: var(--marketplace-green);
    box-shadow: 0 14px 34px rgba(28, 122, 14, .28);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}
.marketplace-commerce > a.button.style1[style*="position:fixed"] .cart_qty { display: grid; min-width: 20px; height: 20px; place-items: center; border-radius: 999px; background: #fff; color: var(--marketplace-green-dark); }

/* Shared marketplace detail, cart and account pages keep their own module layout. */
.marketplace-page .marketplace-product-image { display: flex; min-height: 360px; align-items: center; justify-content: center; }
.marketplace-page .marketplace-product-image img { max-width: 100%; max-height: 480px; object-fit: contain; }
.marketplace-page .marketplace-product-title { overflow-wrap: anywhere; font-size: clamp(28px, 3vw, 38px); line-height: 1.15; }
.marketplace-page .marketplace-seller { border: 1px solid var(--marketplace-line); border-radius: 12px; background: #fff; }
.marketplace-page .marketplace-seller { padding: 15px; }
.marketplace-page .marketplace-seller + .marketplace-seller { margin-top: 10px; }
.marketplace-page .marketplace-stock { color: var(--marketplace-green-dark); font-size: 12px; font-weight: 650; }

/* Marketplace cart — Figma frame 44:867. */
.marketplace-cart {
    position: relative;
    min-height: calc(100vh - 106px);
    overflow: hidden;
    padding: 30px 0 72px;
    background:
        radial-gradient(circle at 4% 5%, rgba(113, 180, 81, .14), transparent 165px),
        radial-gradient(circle at 97% 6%, rgba(113, 180, 81, .12), transparent 180px),
        linear-gradient(180deg, #f8fbf9 0, #f5f8f6 240px, #f5f8f6 100%);
}

.marketplace-cart__leaves,
.marketplace-cart__leaves::before,
.marketplace-cart__leaves::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.marketplace-cart__leaves {
    inset: 0 0 auto;
    height: 150px;
    overflow: hidden;
    background:
        radial-gradient(ellipse 36px 13px at 5px 28px, rgba(106, 179, 76, .17) 0 92%, transparent 95%),
        radial-gradient(ellipse 31px 11px at 44px 50px, rgba(79, 163, 50, .15) 0 92%, transparent 95%),
        radial-gradient(ellipse 27px 10px at 73px 76px, rgba(128, 190, 103, .16) 0 92%, transparent 95%),
        radial-gradient(ellipse 36px 13px at calc(100% - 5px) 28px, rgba(106, 179, 76, .17) 0 92%, transparent 95%),
        radial-gradient(ellipse 31px 11px at calc(100% - 44px) 50px, rgba(79, 163, 50, .15) 0 92%, transparent 95%),
        radial-gradient(ellipse 27px 10px at calc(100% - 73px) 76px, rgba(128, 190, 103, .16) 0 92%, transparent 95%);
}
.marketplace-cart__leaves::before { top: 21px; left: -7px; width: 100px; height: 2px; background: rgba(75, 148, 50, .2); transform: rotate(38deg); transform-origin: left center; }
.marketplace-cart__leaves::after { top: 21px; right: -7px; width: 100px; height: 2px; background: rgba(75, 148, 50, .2); transform: rotate(-38deg); transform-origin: right center; }
.marketplace-cart__shell { position: relative; z-index: 1; width: min(1392px, calc(100% - 40px)); margin-inline: auto; }
.marketplace-cart__topbar { display: flex; min-height: 86px; align-items: flex-start; justify-content: space-between; gap: 28px; }
.marketplace-cart__topbar h1 { margin: 0; color: #10192c; font-size: clamp(30px, 2.4vw, 38px); font-weight: 760; line-height: 1.1; }
.marketplace-cart__breadcrumbs { display: flex; align-items: center; gap: 10px; margin-top: 9px; color: #829087; font-size: 13px; }
.marketplace-cart__breadcrumbs a { color: #6b786f; }
.marketplace-cart__breadcrumbs a:hover { color: var(--marketplace-green-dark); }
.marketplace-cart__controls { display: flex; align-items: center; gap: 18px; }

.marketplace-cart-toggle { display: inline-flex; align-items: center; gap: 12px; margin: 16px 0 0; color: #39463e; font-size: 13px; cursor: pointer; }
.marketplace-cart-toggle input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.marketplace-cart-toggle__track { display: flex; width: 44px; height: 26px; align-items: center; padding: 3px; border-radius: 99px; background: #c9d2cc; transition: background .18s ease; }
.marketplace-cart-toggle__track span { width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(22, 56, 31, .25); transition: transform .18s ease; }
.marketplace-cart-toggle input:checked + .marketplace-cart-toggle__track { background: var(--marketplace-green); }
.marketplace-cart-toggle input:checked + .marketplace-cart-toggle__track span { transform: translateX(18px); }
.marketplace-cart-toggle input:focus-visible + .marketplace-cart-toggle__track { outline: 3px solid color-mix(in srgb, var(--marketplace-green) 22%, transparent); outline-offset: 2px; }

.marketplace-cart-orders-badge { display: flex; min-width: 210px; min-height: 62px; align-items: center; gap: 13px; padding: 11px 18px; border-radius: 12px; background: #eaf6e7; color: #287d25; }
.marketplace-cart-orders-badge > .material-symbols-outlined { font-size: 31px; font-variation-settings: 'FILL' 0, 'wght' 400; }
.marketplace-cart-orders-badge > span:last-child { display: flex; flex-direction: column; }
.marketplace-cart-orders-badge strong { font-size: 13px; line-height: 1.25; }
.marketplace-cart-orders-badge small { margin-top: 3px; color: #65756a; font-size: 11px; }

.marketplace-cart__layout { display: grid; grid-template-columns: minmax(0, 1fr) 382px; align-items: start; gap: 24px; }
.marketplace-cart-orders { min-width: 0; }
.marketplace-cart-group { overflow: hidden; margin: 0 0 16px; border: 1px solid #dfe8e1; border-radius: 13px; background: #fff; box-shadow: 0 7px 22px rgba(36, 74, 45, .035); transition: box-shadow .18s ease, border-color .18s ease; }
.marketplace-cart-group:hover { border-color: #cfddd2; box-shadow: 0 10px 28px rgba(36, 74, 45, .07); }
.marketplace-cart-group__header { display: grid; grid-template-columns: minmax(0, 1fr) auto 36px; min-height: 62px; align-items: center; gap: 14px; padding: 12px 16px; }
.marketplace-cart-group__identity { display: flex; min-width: 0; align-items: center; gap: 11px; }
.marketplace-cart-group__identity h2 { overflow: hidden; margin: 0; color: #111a2d; font-size: 18px; font-weight: 740; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.marketplace-cart-group__badge { flex: 0 0 auto; padding: 6px 10px; border-radius: 7px; background: #e9f7e6; color: #2d8128; font-size: 11px; font-weight: 650; }
.marketplace-cart-group__total { color: #23801f; font-size: 14px; font-weight: 520; white-space: nowrap; }
.marketplace-cart-group__total strong { font-weight: 760; }
.marketplace-cart-group__collapse { display: grid; width: 34px; height: 34px; padding: 0; place-items: center; border: 0; border-radius: 8px; background: transparent; color: #425248; }
.marketplace-cart-group__collapse:hover { background: #f0f6f1; color: var(--marketplace-green-dark); }
.marketplace-cart-group__collapse .material-symbols-outlined { transition: transform .18s ease; }
.marketplace-cart-group__collapse[aria-expanded="false"] .material-symbols-outlined { transform: rotate(180deg); }
.marketplace-cart-group__body[hidden] { display: none; }
.marketplace-cart-group__meta { display: flex; min-height: 44px; align-items: center; gap: 25px; overflow-x: auto; padding: 8px 18px; border-top: 1px solid #edf1ee; border-bottom: 1px solid #e5ebe7; color: #657269; scrollbar-width: none; }
.marketplace-cart-group__meta::-webkit-scrollbar { display: none; }
.marketplace-cart-group__meta > span { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 7px; font-size: 11px; }
.marketplace-cart-group__meta .material-symbols-outlined { color: #46564b; font-size: 17px; }

.marketplace-cart-line { display: grid; grid-template-columns: 76px minmax(220px, 1fr) 106px 104px 42px; min-height: 114px; align-items: center; gap: 17px; padding: 13px 16px; }
.marketplace-cart-line + .marketplace-cart-line { border-top: 1px solid #e6ece8; }
.marketplace-cart-line__media { display: grid; width: 76px; height: 76px; place-items: center; border-radius: 9px; background: #f7faf8; }
.marketplace-cart-line__media img { display: block; max-width: 64px; max-height: 68px; object-fit: contain; }
.marketplace-cart-line__info { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; }
.marketplace-cart-line__info > strong { display: -webkit-box; overflow: hidden; color: #162035; font-size: 14px; font-weight: 650; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.marketplace-cart-line__info > small { margin-top: 3px; color: #87938b; font-size: 11px; }
.marketplace-cart-line__info .marketplace-stock { display: inline-flex; align-items: center; gap: 6px; margin-top: 5px; color: #25851f; font-size: 11px; font-weight: 700; }
.marketplace-cart-line__info .marketplace-stock i { width: 8px; height: 8px; border-radius: 50%; background: #37aa2e; }
.marketplace-cart-line__info .marketplace-stock.is-low { color: #b87b00; }
.marketplace-cart-line__info .marketplace-stock.is-low i { background: #f4ae16; }
.marketplace-qty { display: grid; grid-template-columns: repeat(3, 1fr); height: 40px; overflow: hidden; border: 1px solid #dce5df; border-radius: 9px; background: #fff; }
.marketplace-qty button { min-width: 0; padding: 0; border: 0; background: #f5f8f6; color: #45544a; font-size: 19px; line-height: 1; }
.marketplace-qty button:hover:not(:disabled) { background: #eaf5e9; color: var(--marketplace-green-dark); }
.marketplace-qty button:disabled { opacity: .45; cursor: wait; }
.marketplace-qty span { display: grid; min-width: 35px; place-items: center; color: #152033; font-size: 13px; font-weight: 650; }
.marketplace-cart-line__price { color: #111a2c; font-size: 15px; font-weight: 760; text-align: right; white-space: nowrap; }
.marketplace-cart-line__delete { display: grid; width: 40px; height: 40px; padding: 0; place-items: center; border: 1px solid #dce5df; border-radius: 9px; background: #fff; color: #526158; }
.marketplace-cart-line__delete:hover:not(:disabled) { border-color: #f2b6b6; background: #fff6f6; color: #df3535; }
.marketplace-cart-line__delete .material-symbols-outlined { font-size: 19px; }

.marketplace-cart-orders.is-ungrouped { display: flex; flex-direction: column; gap: 0; }
.marketplace-cart-orders.is-ungrouped .marketplace-cart-group { margin-bottom: -1px; border-radius: 0; box-shadow: none; }
.marketplace-cart-orders.is-ungrouped .marketplace-cart-group:first-child { border-radius: 13px 13px 0 0; }
.marketplace-cart-orders.is-ungrouped .marketplace-cart-group:last-child { border-radius: 0 0 13px 13px; }
.marketplace-cart-orders.is-ungrouped .marketplace-cart-group__header,
.marketplace-cart-orders.is-ungrouped .marketplace-cart-group__meta { display: none; }

.marketplace-cart-sidebar { position: sticky; top: 124px; min-width: 0; }
.marketplace-checkout-card,
.marketplace-cart-assurance { border: 1px solid #dfe8e1; border-radius: 13px; background: #fff; box-shadow: 0 7px 24px rgba(37, 73, 45, .04); }
.marketplace-checkout-card { position: static; padding: 21px; }
.marketplace-checkout-card > h2 { margin: 0 0 5px; color: #111a2d; font-size: 21px; font-weight: 760; }
.marketplace-checkout-card__amount { display: block; margin: 3px 0 15px; color: #0f182b; font-size: clamp(32px, 3vw, 42px); font-weight: 780; line-height: 1.1; }
.marketplace-checkout-card__facts { margin: 0 0 16px; padding: 13px 0; border-top: 1px solid #e7ece8; border-bottom: 1px solid #e7ece8; }
.marketplace-checkout-card__facts > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 5px 1px; }
.marketplace-checkout-card__facts dt { display: inline-flex; align-items: center; gap: 9px; color: #344139; font-size: 13px; font-weight: 500; }
.marketplace-checkout-card__facts dt .material-symbols-outlined { color: #28362d; font-size: 19px; }
.marketplace-checkout-card__facts dd { margin: 0; color: #172136; font-size: 14px; font-weight: 760; }
.marketplace-notice { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 11px; padding: 13px; border: 1px solid #f0cf65; border-radius: 9px; background: #fff7dc; color: #625021; }
.marketplace-notice > .material-symbols-outlined { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #f4b51b; color: #392800; font-size: 19px; font-weight: 700; }
.marketplace-notice strong { display: block; color: #42340c; font-size: 12px; }
.marketplace-notice p { margin: 4px 0 0; font-size: 11px; line-height: 1.45; }
.marketplace-notice--compact { display: block; margin: 10px 0; padding: 10px; font-size: 11px; }

.marketplace-cart-auth { position: relative; margin-top: 14px; }
.marketplace-cart-auth h3 { margin: 0 34px 9px 0; color: #233027; font-size: 14px; font-weight: 740; }
.marketplace-cart-help { position: absolute; top: -3px; right: 0; display: grid; width: 23px; height: 23px; padding: 0; place-items: center; border: 1px solid #8a968e; border-radius: 50%; background: #fff; color: #647168; font-size: 12px; }
.marketplace-cart-auth form,
.marketplace-cart-checkout { display: flex; flex-direction: column; gap: 8px; }
.marketplace-cart-auth label,
.marketplace-cart-checkout > label,
.marketplace-cart-checkout > div > label { color: #2f3d34; font-size: 11px; font-weight: 700; }
.marketplace-cart-auth input,
.marketplace-cart-checkout textarea { width: 100%; min-height: 41px; padding: 10px 12px; border: 1px solid #cbd7ce; border-radius: 7px; background: #fff; color: #172136; font: inherit; font-size: 13px; resize: vertical; }
.marketplace-cart-auth input:focus,
.marketplace-cart-checkout textarea:focus { border-color: var(--marketplace-green); outline: 3px solid color-mix(in srgb, var(--marketplace-green) 10%, transparent); }
.marketplace-cart-auth #mpAuthHint { margin: 0; padding: 10px; border-radius: 7px; background: #edf8eb; color: #276e25; font-size: 11px; line-height: 1.4; }
.marketplace-cart-primary,
.marketplace-cart-secondary { display: inline-flex; min-height: 43px; align-items: center; justify-content: center; gap: 10px; padding: 0 16px; border-radius: 7px; font-size: 13px; font-weight: 720; text-align: center; }
.marketplace-cart-primary { border: 1px solid var(--marketplace-green); background: linear-gradient(135deg, #42b91e, #238b16); color: #fff; box-shadow: 0 8px 18px rgba(41, 145, 25, .16); }
.marketplace-cart-primary:hover { color: #fff; filter: brightness(.96); }
.marketplace-cart-secondary { border: 1px solid var(--marketplace-green); background: #fff; color: var(--marketplace-green-dark); }
.marketplace-cart-secondary:hover { background: #f0f9ed; color: var(--marketplace-green-dark); }
.marketplace-cart-primary:disabled,
.marketplace-cart-secondary:disabled { opacity: .55; cursor: wait; }
.marketplace-cart-customer { display: flex; flex-direction: column; margin: 13px 0; padding: 11px 12px; border-radius: 8px; background: #edf7eb; }
.marketplace-cart-customer small { color: #6d7b71; font-size: 10px; }
.marketplace-cart-customer strong { margin-top: 2px; color: #1c2b20; font-size: 13px; }
.marketplace-cart-customer span { color: #5b6b60; font-size: 11px; }
.marketplace-cart-checkout fieldset { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; border: 0; }
.marketplace-cart-checkout legend { grid-column: 1 / -1; margin: 0; color: #2f3d34; font-size: 12px; font-weight: 700; }
.marketplace-cart-checkout fieldset label { display: flex; min-height: 42px; align-items: center; justify-content: center; gap: 7px; margin: 0; border: 1px solid #d6e1d9; border-radius: 7px; color: #425047; font-size: 11px; cursor: pointer; }
.marketplace-cart-checkout fieldset label:has(input:checked) { border-color: var(--marketplace-green); background: #edf8eb; color: var(--marketplace-green-dark); }
.marketplace-cart-checkout fieldset input { accent-color: var(--marketplace-green); }
.marketplace-cart-checkout fieldset .material-symbols-outlined { font-size: 18px; }

.marketplace-cart-assurance { margin-top: 13px; padding: 17px 20px; }
.marketplace-cart-assurance h2 { margin: 0 0 10px; color: #27342b; font-size: 14px; font-weight: 740; }
.marketplace-cart-assurance > div { display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; gap: 9px; margin-top: 9px; }
.marketplace-cart-assurance > div > .material-symbols-outlined { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; background: #e7f6e5; color: #288b21; font-size: 20px; }
.marketplace-cart-assurance p { display: flex; margin: 0; flex-direction: column; }
.marketplace-cart-assurance strong { color: #3a473e; font-size: 11px; }
.marketplace-cart-assurance small { margin-top: 1px; color: #829087; font-size: 9px; }
.marketplace-cart-empty { display: flex; min-height: 430px; align-items: center; justify-content: center; flex-direction: column; padding: 35px; border: 1px solid #dfe8e1; border-radius: 14px; background: rgba(255, 255, 255, .9); text-align: center; }
.marketplace-cart-empty > .material-symbols-outlined { display: grid; width: 86px; height: 86px; place-items: center; border-radius: 50%; background: #eaf6e7; color: var(--marketplace-green); font-size: 42px; }
.marketplace-cart-empty h2 { margin: 17px 0 7px; color: #172136; font-size: 24px; }
.marketplace-cart-empty p { max-width: 520px; margin: 0 0 20px; color: var(--marketplace-muted); font-size: 13px; }

@media (max-width: 1250px) {
    .marketplace-header__primary { grid-template-columns: 185px minmax(300px, 1fr) auto; gap: 18px; }
    .marketplace-brand img { max-width: 160px; }
    .marketplace-header__promise { display: none; }
    .marketplace-home-layout { grid-template-columns: 230px minmax(0, 1fr); }
    .marketplace-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .marketplace-hero__fallback { grid-template-columns: minmax(0, 1.1fr) .75fr 150px; }
    .marketplace-cart__layout { grid-template-columns: minmax(0, 1fr) 350px; gap: 18px; }
    .marketplace-cart-line { grid-template-columns: 68px minmax(190px, 1fr) 100px 90px 40px; gap: 12px; }
    .marketplace-cart-line__media { width: 68px; height: 68px; }
    .marketplace-cart-group__meta { gap: 17px; }
}

@media (max-width: 991px) {
    .marketplace-shell { width: min(100% - 28px, 920px); }
    .marketplace-header { position: relative; }
    .marketplace-header__primary { grid-template-columns: 44px minmax(0, 1fr) auto; min-height: 68px; gap: 10px; }
    .marketplace-header__menu { display: inline-grid !important; }
    .marketplace-brand img { max-width: 130px; height: 42px; }
    .marketplace-brand__name { font-size: 18px; }
    .marketplace-search { grid-column: 1 / -1; grid-row: 2; margin-bottom: 12px; }
    .marketplace-header__actions > a:not(.marketplace-header__cart),
    .marketplace-header__actions .marketplace-header__cart > span:last-of-type { display: none; }
    .marketplace-header__actions > a { min-width: 44px; height: 44px; }
    .marketplace-header__actions .cart_qty { top: -3px; right: -3px; }
    .marketplace-header__secondary { display: none; }
    .marketplace-main { padding-top: 12px; }
    .marketplace-home-layout { display: block; }
    .marketplace-sidebar { display: none; }
    .marketplace-category-chips { display: flex; }
    .marketplace-hero__fallback { grid-template-columns: minmax(0, 1.2fr) .7fr; }
    .marketplace-hero__values { display: none; }
    .marketplace-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .marketplace-cart { padding-top: 24px; }
    .marketplace-cart__shell { width: min(920px, calc(100% - 28px)); }
    .marketplace-cart__layout { grid-template-columns: 1fr; }
    .marketplace-checkout-card { position: static; }
    .marketplace-cart-sidebar { position: static; top: auto; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(250px, .65fr); align-items: start; gap: 14px; }
    .marketplace-cart-assurance { margin-top: 0; }
}

@media (max-width: 767px) {
    .marketplace-commerce { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
    .marketplace-shell { width: calc(100% - 24px); }
    .marketplace-header__primary { min-height: 62px; }
    .marketplace-brand { justify-content: center; }
    .marketplace-brand img { max-width: 118px; height: 38px; }
    .marketplace-brand__mark { width: 36px; height: 36px; }
    .marketplace-brand__name { font-size: 17px; }
    .marketplace-search { height: 48px; margin-top: 1px; }
    .marketplace-search__submit { min-width: 52px; }
    .marketplace-search__submit span:last-child { display: none; }
    .marketplace-search input { font-size: 13px; }
    .marketplace-main { padding: 10px 0 26px; }
    .marketplace-hero { min-height: 212px; border-radius: 12px; }
    .marketplace-hero .carousel,
    .marketplace-hero .carousel-inner,
    .marketplace-hero .carousel-item { height: 212px; }
    .marketplace-hero__fallback { min-height: 212px; grid-template-columns: minmax(0, 1.15fr) .7fr; }
    .marketplace-hero__copy { padding: 21px; }
    .marketplace-hero__copy > span { font-size: 9px; }
    .marketplace-hero__copy h1 { margin: 5px 0 7px; font-size: clamp(22px, 7vw, 31px); }
    .marketplace-hero__copy p { display: -webkit-box; margin-bottom: 13px; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 11px; }
    .marketplace-hero__copy a { min-height: 38px; padding: 0 13px; font-size: 11px; }
    .marketplace-hero__family { width: 120px; height: 120px; border-width: 7px; }
    .marketplace-hero__family .material-symbols-outlined { font-size: 50px; }
    .marketplace-hero__leaf { font-size: 48px; }
    .marketplace-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .marketplace-benefits > div { min-height: 58px; padding: 9px 12px; border-bottom: 1px solid var(--marketplace-line); }
    .marketplace-benefits > div:nth-child(2) { border-right: 0; }
    .marketplace-benefits > div:nth-child(n+3) { border-bottom: 0; }
    .marketplace-benefits .material-symbols-outlined { font-size: 23px; }
    .marketplace-benefits strong { font-size: 10px; }
    .marketplace-benefits small { font-size: 8px; }
    .marketplace-catalog { padding: 15px 0 0 !important; scroll-margin-top: 10px; }
    .marketplace-catalog__heading { min-height: auto; align-items: center; margin-bottom: 10px; }
    .marketplace-catalog__heading h2 { font-size: 21px; }
    .marketplace-catalog__heading p { font-size: 10px; }
    .marketplace-sort label,
    .marketplace-view-button { display: none; }
    .marketplace-sort select { width: 136px; height: 38px; padding-left: 9px; font-size: 10px; }
    .marketplace-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
    .marketplace-product-card { border-radius: 10px; }
    .marketplace-product-card:hover { transform: none; }
    .marketplace-product-card__media { aspect-ratio: 1 / .88; }
    .marketplace-product-card__media > a { padding: 13px; }
    .marketplace-product-card__body { min-height: 181px; padding: 10px; }
    .marketplace-product-card__name { min-height: 39px; font-size: 11px; }
    .marketplace-product-card__body > strong { font-size: 14px; }
    .marketplace-product-card__stock { min-height: 23px; margin-bottom: 7px; font-size: 8px; }
    .marketplace-product-card__body > button,
    .marketplace-product-card__details { min-height: 38px; font-size: 11px; }
    .marketplace-product-grid.is-list .marketplace-product-card { grid-template-columns: 112px minmax(0, 1fr); }
    .marketplace-product-grid.is-list .marketplace-product-card__media,
    .marketplace-product-grid.is-list .marketplace-product-card__body { min-height: 160px; }
    .marketplace-bottom-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1050;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        min-height: calc(64px + env(safe-area-inset-bottom));
        padding: 5px 8px env(safe-area-inset-bottom);
        border-top: 1px solid var(--marketplace-line);
        background: rgba(255,255,255,.98);
        box-shadow: 0 -8px 24px rgba(25, 44, 34, .08);
        backdrop-filter: blur(14px);
    }
    .marketplace-bottom-nav a,
    .marketplace-bottom-nav button { position: relative; display: flex; min-width: 0; flex-direction: column; align-items: center; justify-content: center; gap: 1px; padding: 0; border: 0; background: transparent; color: #788190; font-size: 9px; }
    .marketplace-bottom-nav a.active { color: var(--marketplace-green-dark); }
    .marketplace-bottom-nav .material-symbols-outlined { font-size: 23px; }
    .marketplace-bottom-nav .cart_qty { top: 0; right: calc(50% - 24px); }
    .marketplace-commerce > a.button.style1[style*="position:fixed"] { display: none !important; }
    .marketplace-modal { align-items: end; padding: 0; }
    .marketplace-modal__dialog { width: 100%; max-height: 84vh; padding: 23px 16px calc(23px + env(safe-area-inset-bottom)); border-radius: 20px 20px 0 0; }
    .marketplace-toast { right: 12px; bottom: calc(76px + env(safe-area-inset-bottom)); max-width: calc(100vw - 24px); }
    .marketplace-cart { min-height: calc(100vh - 122px); padding: 18px 0 28px; }
    .marketplace-cart__shell { width: calc(100% - 24px); }
    .marketplace-cart__topbar { display: block; min-height: 0; margin-bottom: 18px; }
    .marketplace-cart__topbar h1 { font-size: 29px; }
    .marketplace-cart__breadcrumbs { margin-top: 6px; }
    .marketplace-cart__controls { display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: 16px; }
    .marketplace-cart-toggle { justify-content: space-between; margin: 0; padding: 10px 12px; border: 1px solid #dfe8e1; border-radius: 10px; background: rgba(255,255,255,.9); }
    .marketplace-cart-orders-badge { width: 100%; min-width: 0; min-height: 54px; padding: 9px 14px; }
    .marketplace-cart-orders-badge > .material-symbols-outlined { font-size: 27px; }
    .marketplace-cart-group { margin-bottom: 12px; border-radius: 11px; }
    .marketplace-cart-group__header { grid-template-columns: minmax(0, 1fr) 32px; gap: 8px; padding: 12px; }
    .marketplace-cart-group__identity { align-items: flex-start; flex-direction: column; gap: 7px; }
    .marketplace-cart-group__identity h2 { width: 100%; font-size: 16px; white-space: normal; }
    .marketplace-cart-group__badge { padding: 4px 8px; font-size: 10px; }
    .marketplace-cart-group__total { grid-column: 1 / -1; grid-row: 2; font-size: 12px; }
    .marketplace-cart-group__collapse { grid-column: 2; grid-row: 1; }
    .marketplace-cart-group__meta { min-height: 40px; gap: 16px; padding: 7px 12px; }
    .marketplace-cart-line { grid-template-columns: 60px minmax(0, 1fr) auto; min-height: 136px; align-items: start; gap: 10px; padding: 12px; }
    .marketplace-cart-line__media { grid-row: 1 / span 2; width: 60px; height: 68px; }
    .marketplace-cart-line__media img { max-width: 54px; max-height: 60px; }
    .marketplace-cart-line__info > strong { font-size: 12px; }
    .marketplace-cart-line__info > small,
    .marketplace-cart-line__info .marketplace-stock { font-size: 9px; }
    .marketplace-qty { grid-column: 2; grid-row: 2; width: 98px; height: 38px; }
    .marketplace-cart-line__price { grid-column: 3; grid-row: 2; align-self: center; font-size: 13px; }
    .marketplace-cart-line__delete { grid-column: 3; grid-row: 1; width: 36px; height: 36px; }
    .marketplace-cart-sidebar { display: flex; flex-direction: column; gap: 18px; }
    .marketplace-checkout-card { overflow: hidden; padding: 17px; }
    .marketplace-checkout-card__amount { font-size: 34px; }
    .marketplace-cart-assurance { margin-top: 0; }
    .marketplace-cart-empty { min-height: 360px; padding: 24px 18px; }
}

@media (max-width: 420px) {
    .marketplace-shell { width: calc(100% - 18px); }
    .marketplace-brand__name small { display: none; }
    .marketplace-hero__copy { padding: 17px; }
    .marketplace-hero__copy h1 { font-size: 22px; }
    .marketplace-hero__copy p { display: none; }
    .marketplace-hero__family { width: 98px; height: 98px; }
    .marketplace-catalog__heading { align-items: flex-start; }
    .marketplace-catalog__heading p { max-width: 150px; }
    .marketplace-sort select { width: 122px; }
    .marketplace-cart__shell { width: calc(100% - 18px); }
    .marketplace-cart-line { grid-template-columns: 52px minmax(0, 1fr) auto; gap: 8px; padding: 10px; }
    .marketplace-cart-line__media { width: 52px; height: 60px; }
    .marketplace-cart-line__media img { max-width: 47px; max-height: 53px; }
    .marketplace-cart-line__info > strong { font-size: 11px; }
    .marketplace-cart-line__price { font-size: 12px; }
    .marketplace-cart-checkout fieldset { grid-template-columns: 1fr; }
    .marketplace-cart-checkout legend { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .marketplace-commerce *,
    .marketplace-commerce *::before,
    .marketplace-commerce *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
