/* ── Mobile search overlay ──────────────────────────────── */
.ua-mob-search {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9998;
    background: #fff;
    flex-direction: column;
}
.ua-mob-search.open { display: flex; }
.ua-mob-search-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    border-bottom: 1px solid #e0e9f0;
    flex-shrink: 0;
}
.ua-mob-search-back {
    flex-shrink: 0;
    background: none;
    border: none;
    padding: 6px;
    cursor: pointer;
    color: #444;
    display: flex;
    align-items: center;
}
.ua-mob-search-form {
    flex: 1;
    display: flex;
    align-items: center;
    background: #f7f8fb;
    border: 1px solid #e0e9f0;
    border-radius: 22px;
    height: 44px;
    padding: 0 6px 0 16px;
    transition: border-color .15s;
}
.ua-mob-search-form:focus-within { border-color: #1b285e; }
.ua-mob-search-form input {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 16px;
    font-family: 'Inter', sans-serif;
    color: #141414;
    outline: none;
    min-width: 0;
}
.ua-mob-search-form input::placeholder { color: #9aa5ab; }
.ua-mob-search-go {
    flex-shrink: 0;
    background: none;
    border: none;
    padding: 6px 8px;
    cursor: pointer;
    color: #1b285e;
    display: flex;
    align-items: center;
}
.ua-mob-search-results {
    flex: 1;
    overflow-y: auto;
    padding: 8px 0;
}
.ua-mob-search-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    text-decoration: none;
    color: #141414;
    border-bottom: 1px solid #f0f0f0;
    transition: background .12s;
}
.ua-mob-search-item:hover { background: #f7fbfc; }
.ua-mob-search-item img {
    width: 48px;
    height: 64px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
    background: #f7f8fb;
}
.ua-mob-search-item-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.ua-mob-search-item-name {
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    line-height: 1.3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.ua-mob-search-item-mfr {
    font-size: 12px;
    color: #8a9bb0;
    font-family: 'Inter', sans-serif;
}
.ua-mob-search-item-price {
    font-size: 14px;
    font-weight: 700;
    color: #1b285e;
    font-family: 'Inter', sans-serif;
}
.ua-mob-search-all {
    display: block;
    text-align: center;
    padding: 14px 16px;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    color: #1b285e;
    text-decoration: none;
    border-top: 1px solid #e0e9f0;
    margin-top: 4px;
}
.ua-mob-search-empty {
    text-align: center;
    padding: 32px 16px;
    color: #8a9bb0;
    font-size: 15px;
    font-family: 'Inter', sans-serif;
}
.ua-mob-search-spinner {
    text-align: center;
    padding: 24px;
    color: #1b285e;
}

/* ── Mobile: Catblock & Authors carousel (Figma: 1 card full-width, arrows in header) ── */
@media (max-width: 767px) {
    /* Container padding */
    .ua-catblock .container,
    .ua-authors .container,
    .ua-publishers .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    /* Section titles */
    .ua-catblock-title,
    .ua-authors-title,
    .ua-publishers-title {
        font-family: 'Lato', sans-serif !important;
        font-weight: 500 !important;
        font-size: 26px !important;
        line-height: 31px !important;
        color: #000 !important;
        margin: 0 !important;
    }

    /* Head row: title left, arrows right */
    .ua-catblock-head,
    .ua-authors-head,
    .ua-publishers-head {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 16px !important;
    }

    /* Arrow pairs — show on mobile (hidden by ua-layout.css) */
    .ua-catblock-arrows,
    .ua-authors-arrows,
    .ua-publishers-arrows {
        display: flex !important;
        gap: 12px !important;
        flex-shrink: 0 !important;
    }

    /* Prev arrow: white bg + border */
    .ua-catblock-arrows .ua-arrow-btn,
    .ua-authors-arrows .ua-arrow-btn,
    .ua-publishers-arrows .ua-arrow-btn {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        border-radius: 34px !important;
        background: #fff !important;
        border: 1px solid #E0E9F0 !important;
        color: #000 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
    }

    /* Next arrow: teal */
    .ua-catblock-arrows .ua-arrow-btn.ua-arrow-next,
    .ua-authors-arrows .ua-arrow-btn.ua-arrow-next,
    .ua-publishers-arrows .ua-arrow-btn.ua-arrow-next {
        background: #5BB9C5 !important;
        border-color: #5BB9C5 !important;
        color: #fff !important;
    }

    /* ── Catblock: 1 card full-width, 279px ── */
    .ua-catblock-grid {
        display: flex !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        gap: 0 !important;
    }
    .ua-catblock-grid::-webkit-scrollbar { display: none; }
    .ua-catblock-item {
        flex: 0 0 100% !important;
        width: 100% !important;
        height: 279px !important;
        border-radius: 16px !important;
        border: 1px solid #E0E9F0 !important;
        scroll-snap-align: start !important;
    }
    .ua-catblock-label {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        line-height: 25px !important;
        text-align: right !important;
        left: 5% !important;
        right: 5% !important;
        bottom: 5% !important;
        color: #fff !important;
    }

    /* ── Authors: 1 card full-width, 450px image + name below ── */
    .ua-authors-scroll {
        scroll-snap-type: x mandatory !important;
        gap: 0 !important;
        align-items: flex-start !important;
    }
    .ua-author-card {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        scroll-snap-align: start !important;
        flex-direction: column !important;
        align-items: stretch !important;
        border-radius: 0 !important;
        border: none !important;
        overflow: visible !important;
        position: static !important;
        text-decoration: none !important;
    }
    .ua-author-img-wrap {
        width: 100% !important;
        height: 450px !important;
        border-radius: 16px !important;
        border: 1px solid #E0E9F0 !important;
        flex-shrink: 0 !important;
        overflow: hidden !important;
    }
    .ua-author-avatar {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 64px !important;
        border-radius: 0 !important;
    }
    .ua-author-name {
        position: static !important;
        padding: 8px 0 0 !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 20px !important;
        font-weight: 500 !important;
        line-height: 130% !important;
        text-align: center !important;
        color: #000 !important;
        background: transparent !important;
        margin: 0 !important;
    }

    /* ── Publishers: 1 card full-width, 240px image + name below ── */
    .ua-publishers-scroll {
        scroll-snap-type: x mandatory !important;
        gap: 0 !important;
        align-items: flex-start !important;
    }
    .ua-publisher-card {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        scroll-snap-align: start !important;
        flex-direction: column !important;
        align-items: stretch !important;
        border-radius: 0 !important;
        border: none !important;
        overflow: visible !important;
        text-decoration: none !important;
    }
    .ua-publisher-img-wrap {
        width: 100% !important;
        height: 240px !important;
        border-radius: 16px !important;
        border: 1px solid #E0E9F0 !important;
        flex-shrink: 0 !important;
        overflow: hidden !important;
    }
    .ua-publisher-img-wrap .ua-author-avatar {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 0 !important;
    }
    .ua-publisher-name {
        padding: 8px 0 0 !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 20px !important;
        font-weight: 500 !important;
        line-height: 130% !important;
        text-align: center !important;
        color: #000 !important;
        margin: 0 !important;
    }
}

/* ── SEO-текст головної (мобайл) ── */
.ua-home-seo {
    display: none;
}
@media (max-width: 767px) {
    .ua-home-seo {
        display: block;
        background: #F2F5F8;
        padding: 40px 16px;
    }
    .ua-home-seo-inner {
        display: flex;
        flex-direction: column;
        gap: 24px;
    }
    .ua-home-seo-block {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    .ua-home-seo-h1 {
        font-family: 'Lato', sans-serif;
        font-weight: 500;
        font-size: 28px;
        line-height: 34px;
        color: #000;
        margin: 0;
    }
    .ua-home-seo-h2 {
        font-family: 'Lato', sans-serif;
        font-weight: 500;
        font-size: 24px;
        line-height: 29px;
        color: #000;
        margin: 0;
    }
    .ua-home-seo-texts {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    .ua-home-seo-block p,
    .ua-home-seo-texts p {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 16px;
        line-height: 150%;
        color: #000;
        margin: 0;
    }
    .ua-home-seo-bold {
        font-weight: 600 !important;
    }
    .ua-home-seo-expand {
        display: none;
        flex-direction: column;
        gap: 24px;
    }
    .ua-home-seo-expand.is-open {
        display: flex;
    }
    .ua-home-seo-checklist {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    .ua-home-seo-check {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 9px;
    }
    .ua-home-seo-check svg {
        flex-shrink: 0;
        margin-top: 3px;
    }
    .ua-home-seo-check p {
        font-family: 'Open Sans', sans-serif;
        font-size: 16px;
        font-weight: 400;
        line-height: 150%;
        color: #000;
        margin: 0;
    }
    .ua-home-seo-toggle {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-family: 'Open Sans', sans-serif;
        font-size: 16px;
        font-weight: 600;
        color: #000;
        background: none;
        border: none;
        padding: 0;
        cursor: pointer;
    }
    .ua-home-seo-chevron {
        transition: transform 0.25s;
    }
}

/* ── Footer top menu (мобайл) ── */
@media (max-width: 767px) {
    .ua-footer-topmenu {
        background: transparent !important;
        padding: 16px 16px 0 !important;
    }
    .ua-footer-topmenu .container {
        background: #fff !important;
        border-radius: 26px !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.04) !important;
        padding: 12px 16px 20px !important;
    }
    .ua-footer-tabs {
        gap: 8px !important;
        margin-bottom: 12px !important;
    }
    .ua-footer-tab {
        height: 44px !important;
        padding: 0 12px !important;
        font-size: 15px !important;
        flex: 1 !important;
        justify-content: center !important;
    }
    .ua-footer-links-box {
        background: transparent !important;
        border-radius: 0 !important;
        padding: 0 !important;
        margin-top: 0 !important;
        box-shadow: none !important;
    }
    .ua-footer-catlinks {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        grid-template-columns: unset !important;
    }
    .ua-footer-catlinks a {
        font-size: 14px !important;
        line-height: 17px !important;
        color: rgba(0,0,0,0.6) !important;
    }
}

/* ── Fix: hide desktop SEO HTML module on mobile (replaced by ua-home-seo) ── */
@media (max-width: 767px) {
    .ua-main .ua-html-section { display: none !important; }
}

/* ── Footer main mobile (accordion layout) ── */
@media (max-width: 767px) {
    .ua-footer-main {
        padding: 0 !important;
        background: #fff !important;
    }
    .ua-footer-main .container { padding: 0 !important; }
    .ua-footer-grid { display: block !important; gap: 0 !important; }
    .ua-footer-col { margin: 0 !important; padding: 0 !important; }

    /* Магазин accordion */
    #ua-fc-shop {
        border-top: 2px solid #E0E9F0 !important;
        border-bottom: 2px solid #E0E9F0 !important;
    }
    #ua-fc-shop .ua-footer-col-title {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 16px !important;
        font-family: 'Inter', sans-serif !important;
        font-weight: 400 !important;
        font-size: 18px !important;
        line-height: 22px !important;
        color: rgba(0,0,0,0.6) !important;
        cursor: pointer !important;
        margin: 0 !important;
        user-select: none !important;
    }
    #ua-fc-shop .ua-footer-col-chevron {
        display: inline-block !important;
        width: 8px !important;
        height: 8px !important;
        border-right: 2px solid #000 !important;
        border-bottom: 2px solid #000 !important;
        transform: rotate(45deg) !important;
        transition: transform 0.25s !important;
        flex-shrink: 0 !important;
        margin-bottom: 3px !important;
    }
    #ua-fc-shop.is-open .ua-footer-col-chevron {
        transform: rotate(-135deg) !important;
        margin-bottom: -2px !important;
    }
    #ua-fc-shop .ua-footer-links {
        display: none !important;
        flex-direction: column !important;
        gap: 12px !important;
        padding: 4px 16px 20px !important;
        margin: 0 !important;
        list-style: none !important;
    }
    #ua-fc-shop.is-open .ua-footer-links { display: flex !important; }
    #ua-fc-shop .ua-footer-links a {
        font-family: 'Inter', sans-serif !important;
        font-weight: 400 !important;
        font-size: 18px !important;
        line-height: 22px !important;
        color: #1b285e !important;
        text-decoration: none !important;
    }

    /* Особистий кабінет link row */
    #ua-fc-account { border-bottom: 2px solid #E0E9F0 !important; }
    #ua-fc-account .ua-footer-col-title {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 16px !important;
        font-family: 'Inter', sans-serif !important;
        font-weight: 400 !important;
        font-size: 18px !important;
        line-height: 22px !important;
        color: rgba(0,0,0,0.6) !important;
        margin: 0 !important;
        cursor: pointer !important;
        user-select: none !important;
    }
    #ua-fc-account .ua-footer-col-chevron {
        display: inline-block !important;
        width: 8px !important;
        height: 8px !important;
        border-right: 2px solid #000 !important;
        border-top: 2px solid #000 !important;
        transform: rotate(45deg) !important;
        flex-shrink: 0 !important;
    }
    #ua-fc-account .ua-footer-links { display: none !important; }

    /* Зворотній зв'язок */
    #ua-fc-contacts { padding: 20px 16px !important; }
    #ua-fc-contacts .ua-footer-col-title {
        font-family: 'Inter', sans-serif !important;
        font-weight: 400 !important;
        font-size: 18px !important;
        line-height: 22px !important;
        color: rgba(0,0,0,0.6) !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
    }
    #ua-fc-contacts .ua-footer-contacts {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
    }
    #ua-fc-contacts .ua-footer-contact-row {
        gap: 15px !important;
        text-decoration: none !important;
    }
    #ua-fc-contacts .ua-footer-contact-row span {
        font-family: 'Inter', sans-serif !important;
        font-size: 18px !important;
        color: #1b285e !important;
    }
    #ua-fc-contacts .ua-footer-messengers-label {
        font-family: 'Inter', sans-serif !important;
        font-size: 18px !important;
        color: rgba(0,0,0,0.6) !important;
        margin-top: 4px !important;
    }

    /* Месенджери + Соц. мережи пар */
    .ua-footer-mob-ms-pair {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        margin-top: 8px !important;
    }
    .ua-footer-mob-ms-cell { flex: 0 0 auto !important; }
    .ua-footer-mob-ms-cell .ua-footer-messengers-label {
        font-family: 'Inter', sans-serif !important;
        font-size: 18px !important;
        color: rgba(0,0,0,0.6) !important;
        margin-bottom: 8px !important;
        display: block !important;
    }
    .ua-footer-mob-ms-cell .ua-footer-messengers,
    .ua-footer-mob-ms-cell .ua-footer-socials {
        gap: 15px !important;
        display: flex !important;
        flex-wrap: nowrap !important;
    }

    /* Copyright bar */
    .ua-footer-bottom-bar { background: #505B6E !important; }
    .ua-footer-bottom-bar .ua-footer-bottom {
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 7px !important;
        padding: 13px 10px !important;
    }
    .ua-footer-copyright,
    .ua-footer-seo {
        font-family: 'Inter', sans-serif !important;
        font-size: 16px !important;
        color: rgba(255,255,255,0.6) !important;
        width: 100% !important;
        text-align: center !important;
        text-decoration: none !important;
    }
}

/* ── Mobile product page ── */
@media (max-width: 767px) {
    .up-page {
        background: #F7FBFC !important;
        padding-bottom: 104px !important;
    }
    .up-page > .container { padding: 0 !important; }

    /* Breadcrumb */
    .up-breadcrumb {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
        white-space: nowrap !important;
        padding: 8px 16px !important;
        gap: 0 !important;
        margin: 0 !important;
        align-items: center !important;
    }
    .up-breadcrumb::-webkit-scrollbar { display: none; }
    .up-breadcrumb a, .up-breadcrumb > span {
        font-family: 'Lato', sans-serif !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        color: rgba(0,0,0,0.6) !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }
    .up-bc-sep { color: rgba(0,0,0,0.6) !important; padding: 0 4px !important; }

    /* Progress bar */
    .up-gallery-progress {
        position: relative !important;
        height: 2px !important;
        background: #E0E9F0 !important;
        margin: 0 16px 22px !important;
        border-radius: 2px !important;
    }
    .up-gallery-progress-fill {
        position: absolute !important;
        left: 0 !important; top: 0 !important;
        height: 100% !important;
        background: #5BB9C5 !important;
        border-radius: 2px !important;
        transition: width 0.2s !important;
    }

    /* Main layout */
    .up-main {
        flex-direction: column !important;
        gap: 0 !important;
        padding: 0 !important;
        align-items: stretch !important;
    }

    /* Gallery */
    .up-gallery { flex: none !important; width: 100% !important; }

    /* Main image */
    .up-main-img {
        width: calc(100% - 32px) !important;
        height: 395px !important;
        margin: 0 16px !important;
        border: 1px solid #E5E5E5 !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .up-main-img img, #up-main-img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
    }

    /* Thumbnails */
    .up-thumbs {
        display: flex !important;
        flex-direction: row !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
        gap: 8px !important;
        flex-wrap: nowrap !important;
        padding: 12px 16px 0 !important;
        margin: 0 !important;
    }
    .up-thumbs::-webkit-scrollbar { display: none; }
    .up-thumb-item {
        flex: 0 0 auto !important;
        width: 105px !important;
        height: 119px !important;
        border: 1px solid #E5E5E5 !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        display: block !important;
    }
    .up-thumb-item img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
    .up-thumb-active { border-color: #5BB9C5 !important; }

    /* Info column */
    .up-info-col {
        width: 100% !important;
        min-width: 0 !important;
        padding: 16px 16px 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
    }

    /* Info card */
    .up-info-card {
        background: #fff !important;
        box-shadow: 0px 4px 15px rgba(0,0,0,0.04) !important;
        border-radius: 12px !important;
        padding: 24px 16px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        overflow: visible !important;
    }
    .up-info-top {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        padding: 0 !important;
    }
    .up-author {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 18px !important;
        font-weight: 400 !important;
        line-height: 25px !important;
        color: rgba(0,0,0,0.6) !important;
        text-decoration: none !important;
        display: block !important;
        margin: 0 !important;
    }
    .up-title {
        font-family: 'Lato', sans-serif !important;
        font-size: 26px !important;
        font-weight: 700 !important;
        line-height: 31px !important;
        color: #000 !important;
        margin: 0 !important;
    }

    /* Price band — reset desktop background/padding/min-height */
    .up-price-band {
        background: none !important;
        margin-top: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 4px !important;
        align-items: flex-start !important;
        flex-wrap: nowrap !important;
    }
    .up-price-block { display: flex !important; flex-direction: column !important; gap: 0 !important; }
    .up-price {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 33.4px !important;
        font-weight: 700 !important;
        line-height: 45px !important;
        color: #1b285e !important;
    }
    .up-price-old {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 20px !important;
        color: rgba(0,0,0,0.4) !important;
        text-decoration: line-through !important;
    }

    /* Hide desktop buy buttons (replaced by sticky bar) */
    .up-buttons { display: none !important; }

    /* Meta grid — reset desktop padding */
    .up-meta {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 16px 8px !important;
        padding: 0 !important;
        margin-top: 4px !important;
    }
    .up-meta-item { display: flex !important; flex-direction: column !important; gap: 4px !important; }
    .up-meta-label {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 14px !important;
        color: rgba(0,0,0,0.6) !important;
        line-height: 19px !important;
    }
    .up-meta-value {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 16px !important;
        color: #000 !important;
        line-height: 22px !important;
    }
    .up-meta-value a { color: #000 !important; text-decoration: underline !important; }
    .up-meta-more-row { margin-top: 4px !important; padding: 0 !important; }
    .up-all-params {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 16px !important;
        text-decoration: underline !important;
        color: #000 !important;
        background: none !important;
        border: none !important;
        cursor: pointer !important;
        padding: 0 !important;
    }

    /* Cards */
    .up-desc-card, .up-variants-card, .up-cats-card, .up-reviews-card {
        background: #fff !important;
        box-shadow: 0px 4px 15px rgba(0,0,0,0.04) !important;
        border-radius: 12px !important;
        padding: 24px 16px !important;
    }
    .up-variants-title, .up-cats-title, .up-reviews-title {
        font-family: 'Lato', sans-serif !important;
        font-size: 24px !important;
        font-weight: 700 !important;
        line-height: 29px !important;
        color: #141414 !important;
        margin: 0 0 16px !important;
    }

    /* Description card — accordion with chevron */
    .up-desc-title {
        font-family: 'Lato', sans-serif !important;
        font-size: 24px !important;
        font-weight: 700 !important;
        line-height: 29px !important;
        color: #141414 !important;
        margin: 0 !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        cursor: pointer !important;
        user-select: none !important;
    }
    .up-desc-chevron {
        flex-shrink: 0 !important;
        transform: rotate(-90deg) !important;
        transition: transform 0.2s ease !important;
        color: #141414 !important;
    }
    .up-desc-body { display: none !important; }
    .up-desc-body.up-desc-open {
        display: block !important;
        padding-top: 16px !important;
    }
    .up-desc-toggle { display: none !important; }
    .up-desc-text {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 16px !important;
        line-height: 150% !important;
        color: #000 !important;
        max-height: none !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }

    /* Category pills */
    .up-cats-list { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; }
    .up-cat-pill {
        display: inline-flex !important;
        align-items: center !important;
        height: 44px !important;
        padding: 0 16px !important;
        border: 1px solid #E0E9F0 !important;
        border-radius: 37px !important;
        font-family: 'Inter', sans-serif !important;
        font-size: 20px !important;
        color: #1b285e !important;
        text-decoration: none !important;
        background: #fff !important;
        box-sizing: border-box !important;
    }

    /* Reviews */
    .up-reviews-empty-text {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 14px !important;
        color: rgba(0,0,0,0.6) !important;
        margin: 0 0 16px !important;
    }
    .up-review-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 68px !important;
        border: 1px solid #1b285e !important;
        border-radius: 9px !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 22px !important;
        font-weight: 600 !important;
        color: #1b285e !important;
        text-decoration: none !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
        background: none !important;
    }

    /* Related products */
    .up-rel-card { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; overflow: visible !important; }
    .up-rel-head {
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-end !important;
        padding: 0 0 12px !important;
    }
    .up-rel-arrows { display: none !important; }
    .up-rel-title {
        font-family: 'Lato', sans-serif !important;
        font-size: 20px !important;
        font-weight: 500 !important;
        color: #000 !important;
        margin: 0 !important;
    }
    .up-rel-scroll {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        overflow: visible !important;
        padding: 0 !important;
        flex-wrap: unset !important;
        scroll-snap-type: unset !important;
    }
    .up-rel-item {
        flex: none !important;
        min-width: 0 !important;
        width: 100% !important;
        background: #fff !important;
        border: 1px solid #E0E9F0 !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
    }
    .up-rel-img-wrap {
        display: block !important;
        width: 100% !important;
        padding: 10px 10px 0 !important;
    }
    .up-rel-img-wrap img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 9/10 !important;
        object-fit: cover !important;
        border-radius: 10px !important;
        display: block !important;
    }
    .up-rel-author { padding: 4px 8px 0 !important; font-size: 11px !important; color: rgba(0,0,0,0.6) !important; display: block !important; }
    .up-rel-name { padding: 2px 8px 0 !important; flex: 1 !important; margin: 0 !important; }
    .up-rel-name a { font-size: 12px !important; color: #000 !important; text-decoration: none !important; line-height: 1.3 !important; }
    .up-rel-bottom { padding: 4px 8px 8px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; }
    .up-rel-price { font-size: 15px !important; font-weight: 600 !important; color: #000 !important; }
    .up-rel-status { font-size: 10px !important; color: #5bc5ae !important; }
    .up-rel-add {
        width: 36px !important;
        height: 30px !important;
        border-radius: 34px !important;
        background: #1f8a5b !important;
        border: none !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
    }

    /* Mobile sticky buy bar */
    .up-mob-sticky {
        position: fixed !important;
        left: 0 !important; right: 0 !important; bottom: 0 !important;
        z-index: 200 !important;
        background: #fff !important;
        box-shadow: 0px -4px 15px rgba(0,0,0,0.1) !important;
        padding: 12px 16px !important;
    }
    .up-mob-sticky-inner { display: flex !important; flex-direction: row !important; gap: 10px !important; align-items: center !important; }
    .up-mob-sticky-buy {
        flex: 1 !important;
        height: 48px !important;
        background: #1b285e !important;
        border: none !important;
        border-radius: 12px !important;
        font-family: 'Inter', sans-serif !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #fff !important;
        cursor: pointer !important;
        white-space: nowrap !important;
    }
    .up-mob-sticky-buy--out { background: #ccc !important; border-color: #ccc !important; cursor: default !important; }
    .up-mob-sticky-wish {
        flex: 1 !important;
        height: 48px !important;
        background: #F9FAFC !important;
        border: 1px solid #E2E2E2 !important;
        border-radius: 12px !important;
        font-family: 'Inter', sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #141414 !important;
        cursor: pointer !important;
        background-image: none !important;
        white-space: nowrap !important;
    }

    /* Content bottom on product page */
    .up-content-bottom { padding: 0 16px !important; }
}

/* ── Mobile product grid — overrides figma !important rules (must stay last) ── */
@media (max-width: 767px) {
    .ua-products-scroll {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
        scroll-behavior: unset !important;
    }
    .ua-product-card {
        flex: none !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        background: #ffffff !important;
        border: 1px solid #e0e9f0 !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
    }
    .ua-product-img-wrap {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: unset !important;
        padding: 10px 10px 0 !important;
        box-sizing: border-box !important;
        background: transparent !important;
        overflow: visible !important;
    }
    .ua-product-img-wrap img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 9 / 10 !important;
        object-fit: cover !important;
        border-radius: 10px !important;
    }
    .ua-product-body {
        padding: 8px 8px 4px !important;
        gap: 4px !important;
        flex: none !important;
    }
    .ua-product-publisher {
        font-size: 14px !important;
        color: rgba(0,0,0,0.6) !important;
        flex: none !important;
    }
    .ua-product-name,
    .ua-product-name a {
        font-size: 14px !important;
        line-height: 1.3 !important;
        flex: none !important;
    }
    .ua-product-bottom {
        padding: 6px 8px 8px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        margin-top: auto !important;
    }
    /* Сбрасываем десктопный отступ price-block (16px слева) */
    .ua-product-price-block {
        padding: 0 !important;
        flex: 1 !important;
    }
    .ua-product-price {
        font-size: 16px !important;
        font-weight: 600 !important;
    }
    .ua-product-status {
        font-size: 11px !important;
        color: #5bc5ae !important;
    }
    .ua-add-btn {
        width: 48px !important;
        height: 36px !important;
        border-radius: 34px !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

/* ── Category page mobile ── */
@media (max-width: 767px) {

    /* Breadcrumb */
    .breadcrumb-section { padding: 8px 16px 0 !important; }
    .breadcrumb-section .breadcrumb {
        margin: 0 !important; padding: 0 !important;
        font-size: 14px !important; background: none !important;
    }
    .breadcrumb-section .breadcrumb > li { font-size: 14px !important; }
    .breadcrumb-section .breadcrumb > li a,
    .breadcrumb-section .breadcrumb > li span { color: rgba(0,0,0,0.6) !important; font-size: 14px !important; }

    /* OCFilter mobile collapse button — remove entirely */
    .collapse_arrow.collapse_button { display: none !important; }
    #list_category_left { display: none !important; }

    /* Subcategory pills — compact size for mobile UX */
    .ua-cat-pill {
        height: 36px !important;
        font-size: 14px !important;
        padding: 0 12px !important;
    }
    .ua-cat-subcats-wrap { padding: 12px 0 6px !important; }
    .ua-cat-subcats { gap: 8px !important; }

    /* Container padding */
    .ua-cat-container { padding-left: 16px !important; padding-right: 16px !important; }
    .ua-cat-layout-row { padding: 12px 0 24px !important; }

    /* Content takes full width (OCFilter takes #column-left out of flow) */
    #content.ua-cat-content { width: 100% !important; }

    /* Hide OCFilter's own fixed-tab mobile button — we use our toolbar button instead */
    .ocf-btn-mobile-fixed { display: none !important; }

    /* ── OCFilter mobile: Figma overlay (всі секції відкриті, без sub-panel slide) ── */

    /* Container: bottom-sheet (знизу вгору) */
    html body .ocf-container.ocf-mobile-1 {
        width: 100% !important;
        border-radius: 28px 28px 0 0 !important;
        top: auto !important;
        bottom: 0 !important;
        height: 85vh !important;
        transform: translateY(110%) !important;
        transition: transform 300ms ease-in-out !important;
        box-shadow: none !important;
        will-change: transform !important;
    }
    html body .ocf-container.ocf-mobile-1.ocf-mobile-active {
        transform: translateY(0) !important;
        box-shadow: 0 -4px 0 99999px rgba(0, 0, 0, 0.6) !important;
    }

    /* ocf-body: відступ під header панелі (64px) і footer (72px) */
    html body .ocf-container.ocf-mobile-1 .ocf-body {
        top: 64px !important;
        bottom: 72px !important;
        overflow-y: auto !important;
    }

    /* Sub-panel: всі значення завжди відкриті (без slide-in) */
    html body .ocf-container.ocf-mobile-1 .ocf-filter-body > .ocf-value-list {
        position: static !important;
        transform: none !important;
        transition: none !important;
        display: block !important;
        height: auto !important;
        overflow: visible !important;
        padding: 0 0 4px !important;
        margin: 0 !important;
        box-shadow: none !important;
        min-width: 0 !important;
        width: 100% !important;
        background: transparent !important;
        will-change: auto !important;
    }

    /* Filter header при ocf-open: static (без absolute back-panel позиції) */
    html body .ocf-container.ocf-mobile-1 .ocf-filter-header,
    html body .ocf-container.ocf-mobile-1 .ocf-open .ocf-filter-header {
        position: static !important;
        bottom: auto !important;
        left: auto !important;
        background-color: transparent !important;
        width: auto !important;
        height: auto !important;
        padding: 12px 0 !important;
        flex-wrap: nowrap !important;
    }

    /* Ховаємо "назад"-кнопку (більше не потрібна) */
    html body .ocf-container.ocf-mobile-1 .ocf-arrow-left { display: none !important; }
    /* Ховаємо кут-стрілку (не потрібна при відкритому стані) */
    html body .ocf-container.ocf-mobile-1 .ocf-open .ocf-filter-header .ocf-angle-right { display: none !important; }

    /* Заголовок панелі: "Фільтр" + ×  */
    html body .ocf-container.ocf-mobile-1 .ocf-header {
        display: flex !important;
        align-items: center !important;
        height: 64px !important;
        min-height: 64px !important;
        padding: 0 16px !important;
        border-bottom: 1px solid #f0f0f0 !important;
        position: relative !important;
        font-family: 'Lato', sans-serif !important;
        font-weight: 700 !important;
        font-size: 18px !important;
        color: #000 !important;
    }
    /* Ховаємо іконку-слайдер поруч із заголовком */
    html body .ocf-container.ocf-mobile-1 .ocf-header .ocf-sliders { display: none !important; }
    /* Ховаємо блок «Популярні запити» (perelink-block) */
    html body .ocf-container.ocf-mobile-1 .ocf-module-page { display: none !important; }
    .perelink-block { display: none !important; }

    /* Назва групи фільтра (Ціна, Обкладинка, ...) */
    html body .ocf-container.ocf-mobile-1 .ocf-filter-name {
        font-family: 'Lato', sans-serif !important;
        font-weight: 600 !important;
        font-size: 16px !important;
        color: #000 !important;
        line-height: 130% !important;
    }

    /* Список значень (чекбокси) */
    html body .ocf-container.ocf-mobile-1 .ocf-value,
    html body .ocf-container.ocf-mobile-1 .ocf-value:hover,
    html body .ocf-container.ocf-mobile-1 .ocf-value:visited {
        font-family: 'Lato', sans-serif !important;
        font-size: 14px !important;
        color: rgba(0, 0, 0, 0.6) !important;
        margin-bottom: 10px !important;
        line-height: 130% !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-value-count {
        font-family: 'Lato', sans-serif !important;
        font-size: 14px !important;
        color: rgba(0, 0, 0, 0.3) !important;
        margin-left: auto !important;
    }

    /* Кастомний чекбокс: рамка #D9D9D9, при виборі — #1b285e */
    html body .ocf-container.ocf-mobile-1 .ocf-value-input {
        border: 1px solid #D9D9D9 !important;
        border-radius: 3px !important;
        width: 16px !important;
        height: 16px !important;
        flex: 0 0 16px !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-value.ocf-checked .ocf-value-input,
    html body .ocf-container.ocf-mobile-1 .ocf-value.ocf-active-value .ocf-value-input {
        background: #1b285e !important;
        border-color: #1b285e !important;
    }

    /* Слайдер ціни: вхідні поля + кнопка ОК */
    html body .ocf-container.ocf-mobile-1 .ocf-slider-input-group {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        margin-bottom: 16px !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-slider-input-group input {
        height: 31px !important;
        border: 1px solid #E0E9F0 !important;
        border-radius: 16px !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 14px !important;
        color: rgba(0, 0, 0, 0.3) !important;
        padding: 0 12px !important;
        flex: 1 !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-btn-search-slider {
        height: 31px !important;
        min-width: 55px !important;
        padding: 0 10px !important;
        background: rgba(50, 170, 187, 0.5) !important;
        border: none !important;
        border-radius: 16px !important;
        color: #fff !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 14px !important;
        cursor: pointer !important;
        flex-shrink: 0 !important;
        padding-top: 0 !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-noUi-connect { background: #1b285e !important; }

    /* Роздільник між полями ціни */
    html body .ocf-container.ocf-mobile-1 .ocf-slider-input-group .ocf-sep {
        color: #1b285e !important;
        flex-shrink: 0 !important;
    }

    /* Footer + кнопка "Застосувати" */
    html body .ocf-container.ocf-mobile-1 .ocf-footer {
        display: block !important;
        padding: 12px 16px !important;
        margin: 0 !important;
        background: #fff !important;
        height: 72px !important;
        min-height: 72px !important;
        bottom: 0 !important;
        position: absolute !important;
        width: 100% !important;
        box-sizing: border-box !important;
        border-top: 1px solid #f0f0f0 !important;
    }
    /* Контейнер кнопок у footer */
    html body .ocf-container.ocf-mobile-1 .ocf-footer .ocf-between {
        display: block !important;
    }
    /* Кнопка "Скинути всі" — ховаємо, у Figma її немає */
    html body .ocf-container.ocf-mobile-1 .ocf-footer .ocf-btn-link {
        display: none !important;
    }
    /* Кнопка "Застосувати" — це ocf-btn-block у footer */
    html body .ocf-container.ocf-mobile-1 .ocf-footer .ocf-btn-block {
        width: 100% !important;
        margin: 0 !important;
        background: #1b285e !important;
        border: none !important;
        border-radius: 16px !important;
        height: 48px !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        color: #fff !important;
        cursor: pointer !important;
        display: block !important;
        text-align: center !important;
        line-height: 48px !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-footer .ocf-btn-block:disabled,
    html body .ocf-container.ocf-mobile-1 .ocf-footer .ocf-btn-block.ocf-disabled {
        background: #1b285e !important;
        opacity: 0.8 !important;
    }

    /* Кнопка закрити (×) — рендериться як <span class="italic"> з inline display:inline !important
       тому перекриваємо через ::after pseudo-element */
    html body .ocf-container.ocf-mobile-1 .ocf-header .ocf-close-mobile {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 40px !important;
        height: 40px !important;
        margin-left: auto !important;
        flex-shrink: 0 !important;
        padding: 0 !important;
        position: relative !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-header .ocf-close-mobile > * {
        display: none !important;
        visibility: hidden !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-header .ocf-close-mobile::after {
        content: '' !important;
        display: block !important;
        width: 20px !important;
        height: 20px !important;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23686868'%3e%3cpath d='M1.293 1.293a1 1 0 0 1 1.414 0L8 6.586l5.293-5.293a1 1 0 1 1 1.414 1.414L9.414 8l5.293 5.293a1 1 0 0 1-1.414 1.414L8 9.414l-5.293 5.293a1 1 0 0 1-1.414-1.414L6.586 8 1.293 2.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") !important;
        background-size: 20px !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        flex-shrink: 0 !important;
    }

    /* Без помаранчевого фону при активному фільтрі */
    html body .ocf-container.ocf-mobile-1 .ocf-filter.ocf-active {
        background-color: transparent !important;
        background: transparent !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-filter.ocf-active,
    html body .ocf-container.ocf-mobile-1 .ocf-filter.ocf-active + .ocf-filter,
    html body .ocf-container.ocf-mobile-1 .ocf-filter.ocf-active + .ocf-filter.ocf-active {
        border-top-color: inherit !important;
    }

    /* Секція ціни: inputs + кнопка ОК в один рядок */
    html body .ocf-container.ocf-mobile-1 .ocf-slider .ocf-filter-body > .ocf-value-list {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 8px !important;
        position: static !important;
        transform: none !important;
        transition: none !important;
        height: auto !important;
        overflow: visible !important;
        padding: 0 0 4px !important;
        margin: 0 !important;
        box-shadow: none !important;
        min-width: 0 !important;
        width: 100% !important;
        background: transparent !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-slider .ocf-filter-body > .ocf-value-list .ocf-slider-input-group {
        order: 1 !important;
        flex: 1 !important;
        margin-bottom: 0 !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-slider .ocf-filter-body > .ocf-value-list .ocf-btn-search-slider {
        order: 2 !important;
        flex: 0 0 auto !important;
    }
    html body .ocf-container.ocf-mobile-1 .ocf-slider .ocf-filter-body > .ocf-value-list .ocf-value-slider {
        order: 3 !important;
        flex: 0 0 100% !important;
    }

    /* Active-стан кнопки Фільтр в тулбарі */
    .ua-cat-filter-btn.ua-active {
        background: #4aa5b0 !important;
        border-color: #4aa5b0 !important;
    }

    /* Toolbar: CSS Grid — h1 full width, filter+sort по 1fr */
    .ua-cat-toolbar {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        grid-template-areas: "head head" "filter sort" !important;
        gap: 8px !important;
        margin-bottom: 16px !important;
        /* Сбросить desktop flex-direction:column и flex-wrap:nowrap */
        flex-direction: unset !important;
        flex-wrap: unset !important;
        align-items: unset !important;
        justify-content: unset !important;
    }
    .ua-cat-head {
        grid-area: head !important;
        min-width: 0 !important;
    }
    .ua-cat-h1 {
        font-size: 26px !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: unset !important;
        margin-bottom: 4px !important;
    }
    .ua-cat-count {
        font-family: 'Lato', sans-serif !important;
        font-size: 16px !important;
        color: rgba(0,0,0,0.6) !important;
    }

    /* Filter button */
    .ua-cat-filter-btn {
        grid-area: filter !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
        height: 40px !important;
        width: 100% !important;
        background: #5BB9C5 !important;
        border: 1px solid #5BB9C5 !important;
        border-radius: 16px !important;
        color: #fff !important;
        font-family: 'Inter', sans-serif !important;
        font-size: 16px !important;
        font-weight: 400 !important;
        cursor: pointer !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* Sort select — НЕ overflow:hidden, иначе обрезает native dropdown */
    .ua-cat-sort-wrap {
        grid-area: sort !important;
        position: relative !important;
        min-width: 0 !important;
        width: 100% !important;
    }
    .ua-cat-sort {
        height: 40px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        border-radius: 16px !important;
        padding: 0 36px 0 12px !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 14px !important;
    }

    /* Product grid: 2 columns, 8px gap */
    .ua-cat-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
    /* Reset desktop category-specific card overrides */
    .ua-cat-grid .ua-product-card {
        min-height: 0 !important;
    }
    /* Reset desktop image wrapper overrides */
    .ua-cat-grid .ua-product-img-wrap {
        width: 100% !important;
        aspect-ratio: unset !important;
        padding: 10px 10px 0 !important;
        height: auto !important;
    }
    .ua-cat-grid .ua-product-img-wrap img {
        height: 158px !important;
        width: 100% !important;
        aspect-ratio: unset !important;
        object-fit: cover !important;
        border-radius: 12px !important;
    }
    /* Card fonts for category grid */
    .ua-cat-grid .ua-product-publisher { font-size: 14px !important; }
    .ua-cat-grid .ua-product-name,
    .ua-cat-grid .ua-product-name a {
        font-size: 14px !important;
        font-family: 'Open Sans', sans-serif !important;
    }
    /* Figma: price 18px bold for category cards */
    .ua-cat-grid .ua-product-price { font-size: 18px !important; font-weight: 600 !important; }
    .ua-cat-grid .ua-product-status { font-size: 12px !important; }

    /* Pagination on mobile */
    .ua-cat-pager { margin-top: 24px !important; }
    .ua-cat-pager .pagination { justify-content: center !important; flex-wrap: wrap !important; }
    .ua-cat-pager .pagination > li > a,
    .ua-cat-pager .pagination > li > span {
        min-width: 46px !important;
        height: 46px !important;
        padding: 0 8px !important;
    }

    /* SEO section */
    .ua-cat-seo { padding: 16px 0 !important; }
    .ua-cat-seo-body { max-height: 80px !important; font-size: 14px !important; }
}

/* ══ CHECKOUT MOBILE ══════════════════════════════════════════ */
@media (max-width: 767px) {

    /* ── Page heading ── */
    .ua-checkout-h1 {
        font-family: 'Lato', sans-serif !important;
        font-weight: 700 !important;
        font-size: 26px !important;
        line-height: 31px !important;
        color: #000 !important;
        margin: 16px 0 16px !important;
        padding: 0 16px !important;
    }

    /* ── Layout: single column, right col becomes fixed footer ── */
    /* padding-bottom = actual fixed footer height (measured 110px) */
    .ua-checkout-content .simplecheckout {
        display: block !important;
        padding-bottom: 110px !important;
    }
    .ua-checkout-content .simplecheckout-left-column {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        grid-column: unset !important;
    }
    .ua-checkout-content .simplecheckout-right-column {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        top: auto !important;
        grid-column: unset !important;
        z-index: 200 !important;
        background: #fff !important;
        box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.10) !important;
        padding: 12px 16px 16px !important;
        box-sizing: border-box !important;
    }
    /* Hide order summary in the sticky footer (only show buttons) */
    .ua-checkout-content .simplecheckout-right-column #simplecheckout_summary {
        display: none !important;
    }
    .ua-checkout-content .simplecheckout-right-column .simplecheckout-button-block {
        margin-top: 0 !important;
    }

    /* ── Total price row ── */
    .ua-checkout-content .total_price_block {
        position: relative !important;
        display: block !important;
        text-align: right !important;
        font-family: 'Open Sans', sans-serif !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        color: #141414 !important;
        margin-bottom: 10px !important;
        padding-left: 70px !important;
    }
    .ua-checkout-content .total_price_block::before {
        content: 'Разом:' !important;
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        font-family: 'Lato', sans-serif !important;
        font-weight: 600 !important;
        font-size: 16px !important;
        color: #141414 !important;
        line-height: inherit !important;
    }
    .ua-checkout-content .plus_delivery { display: none !important; }

    /* ── Confirm button (Оформити замовлення) ── */
    #simplecheckout_button_confirm {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 40px !important;
        background: #5BB9C5 !important;
        border-radius: 16px !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        color: #fff !important;
        text-decoration: none !important;
        box-sizing: border-box !important;
        border: none !important;
        box-shadow: none !important;
        margin: 0 0 8px !important;
    }
    #simplecheckout_button_confirm span {
        font-size: 16px !important;
        color: #fff !important;
    }

    /* ── Back/continue button (Продовжити покупки) ── */
    .ua-checkout-content .simplecheckout-button-left {
        display: block !important;
    }
    #simplecheckout_button_back {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 40px !important;
        background: #F9FAFC !important;
        border: 1px solid #E2E2E2 !important;
        border-radius: 12px !important;
        font-family: 'Lato', sans-serif !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        color: #141414 !important;
        text-decoration: none !important;
        margin: 0 !important;
        box-shadow: none !important;
    }
    #simplecheckout_button_back span { line-height: 40px !important; }

    /* ── Block cards: flat with bottom separator ── */
    .ua-checkout-content .simplecheckout-block {
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 20px 16px !important;
        margin-bottom: 0 !important;
        background: #fff !important;
        border: none !important;
        border-bottom: 8px solid #F5F5F5 !important;
    }
    .ua-checkout-content .checkout-heading.panel-heading {
        font-size: 22px !important;
        padding: 0 0 12px !important;
        margin: 0 0 12px !important;
    }

    /* ── Cart items: table → grid cards ── */
    #simplecheckout_cart .simplecheckout-cart,
    #simplecheckout_cart .simplecheckout-cart tbody {
        display: block !important;
        width: 100% !important;
    }
    #simplecheckout_cart .simplecheckout-cart tbody > tr {
        display: grid !important;
        grid-template-columns: 72px 1fr auto !important;
        grid-template-rows: auto auto !important;
        column-gap: 10px !important;
        padding: 14px 0 !important;
        border-bottom: 1px solid #F3F3F3 !important;
        align-items: start !important;
    }
    #simplecheckout_cart .simplecheckout-cart tbody > tr:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td {
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        float: none !important;
        vertical-align: unset !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.image {
        position: static !important;
        grid-column: 1 !important;
        grid-row: 1 / 3 !important;
        width: 72px !important;
        padding: 0 !important;
        align-self: start !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.image a {
        display: block !important;
        line-height: 0 !important;
        padding: 0 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.image img {
        display: block !important;
        width: 72px !important;
        height: 96px !important;
        object-fit: cover !important;
        border-radius: 4px !important;
        border: 1px solid #E5E5E5 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.name {
        grid-column: 2 !important;
        grid-row: 1 !important;
        padding: 0 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.name a {
        font-family: 'Lato', sans-serif !important;
        font-weight: 600 !important;
        font-size: 15px !important;
        line-height: 1.3 !important;
        color: #000 !important;
        text-decoration: none !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        margin: 0 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.name .cart-author {
        font-family: 'Open Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
        color: rgba(0,0,0,0.6) !important;
        margin-top: 3px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.name .cart-author a {
        color: rgba(0,0,0,0.6) !important;
        text-decoration: none !important;
        font-size: 13px !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.quantity {
        grid-column: 2 !important;
        grid-row: 2 !important;
        width: auto !important;
        text-align: left !important;
        padding-top: 8px !important;
        align-self: end !important;
    }
    #simplecheckout_cart .btn-block.plus_minus_block {
        justify-content: flex-start !important;
    }
    #simplecheckout_cart .btn-block.plus_minus_block > .btn {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
    }
    #simplecheckout_cart .btn-block.plus_minus_block input[type="text"] {
        width: 28px !important;
        min-width: 28px !important;
        height: 32px !important;
        font-size: 16px !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.total {
        grid-column: 3 !important;
        grid-row: 2 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        min-width: auto !important;
        white-space: nowrap !important;
        text-align: right !important;
        padding: 0 !important;
        align-self: end !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.total .column_name { display: none !important; }
    /* Remove button: absolute top-right corner of each row */
    #simplecheckout_cart .simplecheckout-cart td.remove {
        position: absolute !important;
        top: 14px !important;
        right: 0 !important;
        display: block !important;
        padding: 0 !important;
        width: 28px !important;
        height: 28px !important;
        text-align: right !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.remove a,
    #simplecheckout_cart .simplecheckout-cart td.remove button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 28px !important;
        height: 28px !important;
        background: none !important;
        border: none !important;
        opacity: 0.45 !important;
        cursor: pointer !important;
        padding: 0 !important;
    }
    #simplecheckout_cart .simplecheckout-cart td.remove a img,
    #simplecheckout_cart .simplecheckout-cart td.remove button img { display: none !important; }
    /* Hide cells that auto-place into the grid and break layout */
    #simplecheckout_cart .simplecheckout-cart td.author,
    #simplecheckout_cart .simplecheckout-cart td.model,
    #simplecheckout_cart .simplecheckout-cart td.price {
        display: none !important;
    }

    /* ── Table → coupon separator (no thick border on mobile) ── */
    #simplecheckout_cart > div[class=""] {
        margin-bottom: 12px;
    }
    /* ── Totals rows: edge-to-edge ── */
    #simplecheckout_cart .simplecheckout-cart-total[id^="total_"] {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        margin: 0 -16px !important;
        padding: 8px 20px !important;
        font-size: 16px !important;
        border: none !important;
        border-top: 1px solid #F3F3F3 !important;
        float: none !important;
        clear: both !important;
    }
    #simplecheckout_cart .simplecheckout-cart-total[id^="total_"] span:first-child {
        font-family: 'Lato', sans-serif !important;
        font-weight: 600 !important;
        font-size: 16px !important;
        color: #141414 !important;
    }
    #simplecheckout_cart .simplecheckout-cart-total-value {
        font-family: 'Lato', sans-serif !important;
        font-weight: 600 !important;
        font-size: 18px !important;
        color: #141414 !important;
    }
    #simplecheckout_cart .simplecheckout-cart-total-remove { display: none !important; }

    /* ── Coupon: vertical stack ── */
    #simplecheckout_cart .simplecheckout-cart-total > .inputs {
        display: block !important;
    }
    #simplecheckout_button_apply_coupon {
        width: 100% !important;
        display: block !important;
    }
    #simplecheckout_button_apply_coupon > div {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        box-sizing: border-box !important;
        gap: 8px !important;
        align-items: stretch !important;
    }
    #simplecheckout_button_apply_coupon input.form-control {
        height: 60px !important;
        width: 100% !important;
        flex: none !important;
        box-sizing: border-box !important;
    }
    #simplecheckout_button_apply_coupon .button.btn-primary,
    #simplecheckout_button_apply_coupon a.button {
        height: 60px !important;
        width: 100% !important;
        flex: none !important;
        box-sizing: border-box !important;
        font-size: 18px !important;
    }

    /* ── Customer form: single column ── */
    #simplecheckout_customer .form-group.col-md-8.col-lg-6 {
        width: 100% !important;
    }

    /* ── Shipping address: single column ── */
    .ua-checkout-content #simplecheckout_shipping_address {
        padding: 20px 16px !important;
    }
    #simplecheckout_shipping_address fieldset.form-horizontal {
        gap: 8px !important;
    }
    #simplecheckout_shipping_address .form-group {
        flex: 0 0 100% !important;
        width: 100% !important;
    }

    /* ── Payment + notice card: connected on mobile too ── */
    .ua-checkout-content #simplecheckout_payment {
        padding: 20px 16px !important;
        margin-bottom: 0 !important;
        border-bottom-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom: none !important;
    }
    .ua-checkout-content #simplecheckout_text_help {
        padding: 0 16px 20px !important;
        box-shadow: none !important;
        border-bottom: 8px solid #F5F5F5 !important;
        border-radius: 0 !important;
    }
}

/* ══ CART MOBILE ══════════════════════════════════════════════ */
@media (max-width: 767px) {

    /* Desktop table — hidden on mobile */
    .ua-cart-desktop { display: none !important; }

    /* Mobile cart wrapper */
    .ua-cart-mobile {
        display: block;
        background: #fff;
        min-height: 100vh;
        padding-bottom: 8px;
    }

    /* ── Delivery progress bar ── */
    .ua-cart-delivery {
        background: #F7FBFC;
        padding: 16px 20px 16px 20px;
        margin-bottom: 8px;
    }
    .ua-cart-delivery-text {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 17px;
        line-height: 110%;
        text-align: center;
        color: #000;
        margin-bottom: 12px;
    }
    .ua-cart-delivery-track {
        width: 100%;
        height: 5px;
        background: #E7E7E7;
        border-radius: 3px;
        overflow: hidden;
        margin-bottom: 8px;
    }
    .ua-cart-delivery-fill {
        height: 100%;
        background: #4FC3C0;
        border-radius: 3px;
        transition: width 0.4s ease;
    }
    .ua-cart-delivery-labels {
        display: flex;
        justify-content: space-between;
        font-family: 'Lato', sans-serif;
        font-size: 18px;
        line-height: 110%;
    }
    .ua-cart-delivery-labels span:nth-child(1) { font-weight: 500; }
    .ua-cart-delivery-labels span:nth-child(2) { font-weight: 600; text-align: center; }
    .ua-cart-delivery-labels span:nth-child(3) { font-weight: 500; text-align: right; }

    /* ── Cart items ── */
    .ua-cart-items-wrap {
        padding: 0 16px;
    }
    .ua-cart-item {
        display: grid;
        grid-template-columns: 88px 1fr 72px;
        column-gap: 12px;
        padding: 16px 0;
        border-bottom: 1px solid #F3F3F3;
        align-items: start;
    }
    .ua-cart-item-img-wrap {
        grid-column: 1;
        grid-row: 1;
        display: block;
        width: 88px;
        height: 96px;
        border: 1px solid #E5E5E5;
        border-radius: 4px;
        overflow: hidden;
        flex-shrink: 0;
    }
    .ua-cart-item-img-wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .ua-cart-item-info {
        grid-column: 2;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        gap: 4px;
        min-width: 0;
    }
    .ua-cart-item-name {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 18px;
        line-height: 110%;
        color: #000;
        text-decoration: none;
        display: block;
    }
    .ua-cart-item-author {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 15px;
        line-height: 20px;
        color: rgba(0,0,0,0.6);
    }
    .ua-cart-item-qty {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-top: 8px;
    }
    .ua-cart-qty-btn {
        width: 45px;
        height: 45px;
        min-width: 45px;
        background: #F9F9FA;
        border: 1px solid #F3F3F3;
        border-radius: 9px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        padding: 0;
        flex-shrink: 0;
    }
    .ua-cart-qty-num {
        font-family: 'Lato', sans-serif;
        font-weight: 500;
        font-size: 20px;
        line-height: 110%;
        color: #000;
        min-width: 30px;
        text-align: center;
    }
    .ua-cart-item-right {
        grid-column: 3;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 4px;
        padding-top: 2px;
    }
    .ua-cart-remove {
        background: none;
        border: none;
        padding: 2px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 24px;
        margin-bottom: 4px;
    }
    .ua-cart-price-old {
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 18px;
        line-height: 25px;
        color: #A3A9AD;
        text-decoration: line-through;
        text-align: right;
        display: block;
    }
    .ua-cart-price {
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 27px;
        color: #000;
        text-align: right;
        display: block;
    }

    /* ── "Інші товари" section ── */
    .ua-cart-other {
        padding: 20px 16px;
        border-top: 8px solid #F5F5F5;
        margin-top: 8px;
    }
    .ua-cart-other-header {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 16px;
    }
    .ua-cart-other-title {
        font-family: 'Lato', sans-serif;
        font-weight: 500;
        font-size: 26px;
        line-height: 31px;
        color: #000;
    }
    .ua-cart-other-link {
        font-family: 'Inter', sans-serif;
        font-weight: 400;
        font-size: 16px;
        color: #1b285e;
        text-decoration: none;
    }
    .ua-cart-other-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }

    /* ── Sticky footer ── */
    .ua-cart-footer {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 200;
        background: #fff;
        padding: 12px 16px 16px;
        box-sizing: border-box;
        box-shadow: 0 4px 27.8px rgba(0,0,0,0.15), 0 4px 15px rgba(0,0,0,0.04);
        display: none; /* shown only on mobile */
    }
    .ua-cart-footer-total {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 16px;
    }
    .ua-cart-footer-label {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 24px;
        color: #000;
    }
    .ua-cart-footer-sum {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 24px;
        color: #000;
    }
    .ua-cart-btn-checkout {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 40px;
        background: #5BB9C5;
        border: 1px solid #E0E9F0;
        border-radius: 16px;
        font-family: 'Inter', sans-serif;
        font-size: 16px;
        font-weight: 400;
        color: #fff;
        text-decoration: none;
        margin-bottom: 8px;
        box-sizing: border-box;
    }
    .ua-cart-btn-continue {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 40px;
        background: #F9FAFC;
        border: 1px solid #E2E2E2;
        border-radius: 12px;
        font-family: 'Inter', sans-serif;
        font-size: 16px;
        font-weight: 400;
        color: #141414;
        text-decoration: none;
        box-sizing: border-box;
    }
}

/* Show footer only on mobile */
@media (max-width: 767px) {
    .ua-cart-footer { display: block; }
}

/* ══ CART MODAL MOBILE ════════════════════════════════════════ */
/* Bottom sheet: slides up, leaves 101px at top, rounded top corners       */
@media (max-width: 767px) {

    /* ── Bottom-sheet slide-up animation ── */
    .ua-cart-modal,
    .ua-cart-modal.in { overflow: hidden !important; }

    .ua-cart-modal.fade .modal-dialog {
        transform: translateY(100%);
        transition: transform 0.35s cubic-bezier(0.32, 0.72, 0, 1);
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: calc(100% - 101px);
    }
    .ua-cart-modal.in .modal-dialog {
        transform: translateY(0);
    }
    .ua-cart-modal .modal-content {
        height: 100%;
        border-radius: 28px 28px 0 0 !important;
        border: none !important;
        display: flex !important;
        flex-direction: column !important;
        box-shadow: none !important;
        overflow: hidden;
    }
    .ua-cart-modal .modal-body {
        padding: 0 !important;
        flex: 1 !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
    }

    /* ── Header: Кошик + × ── */
    .ua-cmodal-head {
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px 20px 14px;
        border-bottom: 1px solid #F3F3F3;
    }
    .ua-cart-title {
        font-family: 'Lato', sans-serif;
        font-weight: 700;
        font-size: 26px;
        line-height: 31px;
        color: #000;
        margin: 0;
    }
    .ua-cart-close {
        background: none;
        border: none;
        padding: 4px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        opacity: 0.6;
    }

    /* ── Delivery bar (outside scroll, directly below header) ── */
    /* Frame 2559: height 103px, padding 16px 12px 16px 20px, bg #F7FBFC */
    .ua-cart-ship {
        flex-shrink: 0;
        order: 1;
        background: #F7FBFC;
        padding: 16px 12px 16px 20px;
        min-height: 103px;
        box-sizing: border-box;
        border-bottom: none;
    }
    .ua-cart-ship-text {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 17px;
        line-height: 110%;
        text-align: center;
        color: #000;
        margin-bottom: 12px;
    }
    .ua-cart-ship-text.active { color: #4FC3C0; }
    .ua-cart-ship-bar {
        width: 100%;
        height: 5px;
        background: #E7E7E7;
        border-radius: 3px;
        overflow: hidden;
        margin-bottom: 8px;
    }
    .ua-cart-ship-fill { height: 100%; background: #4FC3C0; border-radius: 3px; }
    .ua-cart-ship-labels {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin-top: 6px;
        font-family: 'Lato', sans-serif;
        font-size: 14px;
        line-height: 110%;
    }
    .ua-css-start { position: static; font-weight: 500; color: #000; flex-shrink: 0; }
    .ua-css-end   { position: static; font-weight: 500; color: #000; flex-shrink: 0; }
    .ua-css-cur   {
        position: static;
        transform: none;
        font-weight: 600;
        color: #000;
        white-space: nowrap;
        flex: 1;
        text-align: center;
    }

    /* ── Scrollable content ── */
    .ua-cmodal-scroll {
        flex: 1 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        order: 2;
    }

    /* ── Items list ── */
    .ua-cart-items { padding: 0 16px; }
    .ua-cart-item {
        display: grid;
        grid-template-columns: 72px 1fr auto;
        column-gap: 10px;
        padding: 14px 0;
        border-bottom: 1px solid #F3F3F3;
        align-items: start;
    }
    .ua-cart-item:last-child { border-bottom: none; }

    .ua-cart-item-img {
        display: block;
        grid-column: 1;
        grid-row: 1;
        width: 72px;
        height: 96px;
        border: 1px solid #E5E5E5;
        border-radius: 4px;
        overflow: hidden;
    }
    .ua-cart-item-img img { width: 100%; height: 100%; object-fit: cover; }

    .ua-cart-item-main {
        grid-column: 2;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        gap: 4px;
        min-width: 0;
    }
    .ua-cart-item-author {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 14px;
        line-height: 19px;
        color: rgba(0,0,0,0.6);
    }
    .ua-cart-item-name {
        display: block;
        min-width: 0;
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 16px;
        line-height: 110%;
        color: #000;
        text-decoration: none;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .ua-cart-item-qty {
        display: flex;
        align-items: center;
        gap: 6px;
        flex-shrink: 0;
    }
    .ua-qty-btn {
        width: 36px;
        height: 36px;
        min-width: 36px;
        background: #F9F9FA;
        border: 1px solid #F3F3F3;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        padding: 0;
        flex-shrink: 0;
    }
    .ua-qty-val {
        font-family: 'Lato', sans-serif;
        font-weight: 500;
        font-size: 18px;
        line-height: 110%;
        color: #000;
        min-width: 20px;
        text-align: center;
    }

    .ua-cart-item-right {
        grid-column: 3;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 4px;
    }
    .ua-cart-item-remove {
        background: none;
        border: none;
        padding: 2px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 24px;
        opacity: 0.5;
        flex-shrink: 0;
    }
    .ua-ci-price-old {
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 14px;
        color: #A3A9AD;
        text-decoration: line-through;
        text-align: right;
        white-space: nowrap;
    }
    .ua-ci-price {
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 18px;
        color: #000;
        text-align: right;
        white-space: nowrap;
    }

    /* ── "Інші товари" section: hidden on mobile ── */
    .ua-cart-similar {
        display: none !important;
    }
    .ua-cart-similar-head {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 16px;
    }
    .ua-cart-similar-title {
        font-family: 'Lato', sans-serif;
        font-weight: 500;
        font-size: 26px;
        line-height: 31px;
        color: #000;
        margin: 0;
    }
    .ua-cart-similar-more {
        font-family: 'Inter', sans-serif;
        font-weight: 400;
        font-size: 16px;
        color: #1b285e;
        text-decoration: none;
    }
    /* Frame 22: 2-column grid, cards 175px wide */
    .ua-cart-similar-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
    .ua-cart-similar-grid .ua-product-card {
        width: 100% !important;
        flex: none !important;
        min-height: 0 !important;
        border: 1px solid #E0E9F0 !important;
        border-radius: 16px !important;
        overflow: hidden;
    }
    .ua-cart-similar-grid .ua-product-img-wrap {
        width: calc(100% - 16px) !important;
        height: 158px !important;
        margin: 8px auto 0 !important;
        padding: 0 !important;
        aspect-ratio: unset !important;
        background: #F7F8FB;
        border-radius: 12px;
        overflow: hidden;
    }
    .ua-cart-similar-grid .ua-product-img-wrap img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        border-radius: 12px !important;
    }
    .ua-cart-similar-grid .ua-product-publisher {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 14px !important;
        color: rgba(0,0,0,0.6);
        padding: 6px 10px 0;
    }
    .ua-cart-similar-grid .ua-product-name,
    .ua-cart-similar-grid .ua-product-name a {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 14px !important;
        color: #000;
        padding: 2px 10px;
        display: block;
    }
    .ua-cart-similar-grid .ua-product-status {
        font-family: 'Lato', sans-serif;
        font-weight: 400;
        font-size: 12px;
        color: #5BC5AE;
        padding: 0 10px;
    }
    .ua-cart-similar-grid .ua-product-price { font-size: 18px !important; padding: 2px 10px; }
    .ua-cart-similar-grid .ua-product-bottom { padding: 4px 10px 10px; }
    .ua-cart-similar-grid .ua-add-btn {
        background: #1f8a5b !important;
        border-radius: 34px !important;
        width: 46px !important;
        height: 46px !important;
        min-width: 0 !important;
        padding: 0 !important;
        flex-shrink: 0;
    }

    /* ── Sticky footer: Разом + кнопки ── */
    /* Frame 2564: height 174px, padding 16px, gap 8px, shadow */
    .ua-cmodal-foot {
        flex-shrink: 0;
        order: 3;
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 16px;
        background: #fff;
        box-shadow: 0 -4px 27.8px rgba(0,0,0,0.15), 0 -4px 15px rgba(0,0,0,0.04);
        box-sizing: border-box;
    }
    .ua-cmodal-foot-right { display: contents; }

    /* Разом row: space-between, Lato 600 20px */
    .ua-cart-summary {
        display: flex;
        justify-content: space-between;
        align-items: center;
        order: -2;
    }
    .ua-cart-total-label {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 24px;
        color: #000;
    }
    .ua-cart-total-val {
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 24px;
        color: #000;
    }

    /* Оформити замовлення: height 40px, #5BB9C5, border-radius 16px, Inter 400 16px */
    .ua-cart-modal .ua-cart-btn-checkout {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 40px;
        background: #5BB9C5;
        border: 1px solid #E0E9F0;
        border-radius: 16px;
        font-family: 'Inter', sans-serif;
        font-size: 16px;
        font-weight: 400;
        color: #fff;
        text-decoration: none;
        box-sizing: border-box;
        order: -1;
        flex: none;
    }

    /* Продовжити покупки: height 40px, #F9FAFC, border-radius 12px, Inter 400 16px */
    .ua-cart-modal .ua-cart-btn-continue {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 40px;
        background: #F9FAFC;
        border: 1px solid #E2E2E2;
        border-radius: 12px;
        font-family: 'Inter', sans-serif;
        font-size: 16px;
        font-weight: 400;
        color: #000;
        cursor: pointer;
        box-sizing: border-box;
        order: 0;
        flex: none;
    }

    /* Empty cart */
    .ua-cart-empty { padding: 32px 16px; text-align: center; }
    .ua-cart-empty-title { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
}
