/**
 * OGONKI.BY Modern UI — premium catalogue
 * Version: 0.6.6
 * Date: 2026-09-29
 *
 * Presentation-only layer for category/listing pages. All selectors are
 * scoped to Modern UI + .og-catalog-page. Classic Solo Home is untouched.
 */

body.ogonki-modern.og-catalog-page {
    --og-cat-bg: #f4f6f5;
    --og-cat-surface: #ffffff;
    --og-cat-surface-2: #f8faf9;
    --og-cat-line: rgba(31, 40, 48, .10);
    --og-cat-line-strong: rgba(31, 40, 48, .16);
    --og-cat-text: #1e252c;
    --og-cat-muted: #77818a;
    --og-cat-accent: #a6d943;
    --og-cat-accent-strong: #6fa82e;
    --og-cat-accent-soft: rgba(166, 217, 67, .13);
    --og-cat-radius: 16px;
    --og-cat-radius-sm: 12px;
    --og-cat-shadow: 0 14px 34px rgba(18, 25, 31, .08);
    --og-cat-shadow-hover: 0 20px 48px rgba(18, 25, 31, .13);
    background: var(--og-cat-bg);
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] {
    --og-cat-bg: #0d1115;
    --og-cat-surface: #171c21;
    --og-cat-surface-2: #11171c;
    --og-cat-line: rgba(255, 255, 255, .085);
    --og-cat-line-strong: rgba(255, 255, 255, .14);
    --og-cat-text: #f2f5f6;
    --og-cat-muted: #9da7af;
    --og-cat-accent: #a9dc46;
    --og-cat-accent-strong: #b9ec5a;
    --og-cat-accent-soft: rgba(169, 220, 70, .12);
    --og-cat-shadow: 0 16px 38px rgba(0, 0, 0, .22);
    --og-cat-shadow-hover: 0 22px 56px rgba(0, 0, 0, .34), 0 0 24px rgba(169, 220, 70, .055);
    background: var(--og-cat-bg);
}

/* ---------- Page geometry ---------- */
body.ogonki-modern.og-catalog-page main > .container,
body.ogonki-modern.og-catalog-page .page-wrap > .container {
    width: min(1440px, calc(100% - 40px));
    max-width: 1440px;
    padding-left: 0;
    padding-right: 0;
}

body.ogonki-modern.og-catalog-page .page-wrap {
    background: var(--og-cat-bg);
}

body.ogonki-modern.og-catalog-page .right_content {
    color: var(--og-cat-text);
}

body.ogonki-modern.og-catalog-page .breadcrumb {
    margin: 22px 0 8px;
    color: var(--og-cat-muted);
    font-size: 12px;
}

body.ogonki-modern.og-catalog-page .breadcrumb a {
    color: var(--og-cat-muted);
}

body.ogonki-modern.og-catalog-page .category_heading,
body.ogonki-modern.og-catalog-page .category_heading.mobile {
    margin: 8px 0 8px;
    color: var(--og-cat-text);
    font-size: clamp(32px, 3.2vw, 46px);
    line-height: 1.04;
    font-weight: 780;
    letter-spacing: -.035em;
}

body.ogonki-modern.og-catalog-page .og-catalog-count {
    margin: 0 0 18px;
    color: var(--og-cat-muted);
    font-size: 13px;
    line-height: 1.45;
}

/* ---------- Catalogue controls ---------- */
body.ogonki-modern.og-catalog-page .listing-header {
    margin: 0 0 22px;
    padding: 10px 12px;
    border: 1px solid var(--og-cat-line);
    border-radius: 14px;
    background: var(--og-cat-surface);
    box-shadow: none;
}

body.ogonki-modern.og-catalog-page .sort-selector {
    min-height: 42px;
    gap: 10px 12px;
}

body.ogonki-modern.og-catalog-page .listing-header-punkt {
    color: var(--og-cat-muted);
    font-size: 12px;
    font-weight: 650;
}

body.ogonki-modern.og-catalog-page .sorting_block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}

body.ogonki-modern.og-catalog-page .sorting_block label {
    margin: 0;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: var(--og-cat-muted);
    font-size: 12px;
    line-height: 1.15;
    font-weight: 650;
    cursor: pointer;
}

body.ogonki-modern.og-catalog-page .sorting_block label:hover {
    color: var(--og-cat-text);
    background: var(--og-cat-surface-2);
}

body.ogonki-modern.og-catalog-page .sorting_block input[type="radio"]:checked + label {
    border-color: rgba(166, 217, 67, .28);
    background: var(--og-cat-accent-soft);
    color: var(--og-cat-accent-strong);
}

/* ---------- Sidebar / filters ---------- */
body.ogonki-modern.og-catalog-page #sidebar-left,
body.ogonki-modern.og-catalog-page .sidebar.left_content {
    color: var(--og-cat-text);
}

@media (min-width: 992px) {
    body.ogonki-modern.og-catalog-page #sidebar-left,
    body.ogonki-modern.og-catalog-page .sidebar.left_content {
        position: sticky;
        top: 94px;
        max-height: calc(100vh - 118px);
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: rgba(125, 137, 147, .35) transparent;
    }

    body.ogonki-modern.og-catalog-page #sidebar-left::-webkit-scrollbar,
    body.ogonki-modern.og-catalog-page .sidebar.left_content::-webkit-scrollbar {
        width: 6px;
    }

    body.ogonki-modern.og-catalog-page #sidebar-left::-webkit-scrollbar-thumb,
    body.ogonki-modern.og-catalog-page .sidebar.left_content::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(125, 137, 147, .35);
    }
}

body.ogonki-modern.og-catalog-page #sidebar-left .box,
body.ogonki-modern.og-catalog-page #sidebar-left .filter_box,
body.ogonki-modern.og-catalog-page .sidebar.left_content .box-category {
    overflow: hidden;
    margin: 0 0 12px;
    border: 1px solid var(--og-cat-line);
    border-radius: 14px;
    background: var(--og-cat-surface);
    box-shadow: none;
}

body.ogonki-modern.og-catalog-page .sidebar.left_content .box-category .sidebar-box-title,
body.ogonki-modern.og-catalog-page #sidebar-left .filter_box .filter_box_title,
body.ogonki-modern.og-catalog-page .sidebar.left_content .filter_box .filter_box_title {
    position: relative;
    min-height: 46px;
    padding: 14px 44px 13px 14px;
    border-bottom: 1px solid var(--og-cat-line);
    color: var(--og-cat-text);
    font-size: 13px;
    line-height: 1.25;
    font-weight: 740;
    cursor: pointer;
    user-select: none;
}

body.ogonki-modern.og-catalog-page .filter_box.og-filter-collapsible > .filter_box_title::after {
    content: "⌄";
    position: absolute;
    top: 50%;
    right: 14px;
    display: grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border: 1px solid var(--og-cat-line);
    border-radius: 8px;
    color: var(--og-cat-muted);
    font-size: 15px;
    line-height: 1;
    transform: translateY(-50%);
    transition: transform .2s ease, color .2s ease, border-color .2s ease;
}

body.ogonki-modern.og-catalog-page .filter_box.og-filter-collapsed > .filter_box_title {
    border-bottom-color: transparent;
}

body.ogonki-modern.og-catalog-page .filter_box.og-filter-collapsed > .filter_box_title::after {
    transform: translateY(-50%) rotate(-90deg);
}

body.ogonki-modern.og-catalog-page .filter_box.og-filter-collapsed > :not(.filter_box_title) {
    display: none !important;
}

body.ogonki-modern.og-catalog-page #sidebar-left label,
body.ogonki-modern.og-catalog-page .sidebar.left_content label {
    color: var(--og-cat-muted);
    font-size: 12px;
    line-height: 1.35;
    cursor: pointer;
}

body.ogonki-modern.og-catalog-page #sidebar-left input[type="checkbox"],
body.ogonki-modern.og-catalog-page #sidebar-left input[type="radio"],
body.ogonki-modern.og-catalog-page .sidebar.left_content input[type="checkbox"],
body.ogonki-modern.og-catalog-page .sidebar.left_content input[type="radio"] {
    width: 18px;
    height: 18px;
    margin: 0 7px 0 0;
    accent-color: var(--og-cat-accent);
    vertical-align: middle;
}

body.ogonki-modern.og-catalog-page #sidebar-left input[type="text"],
body.ogonki-modern.og-catalog-page #sidebar-left input[type="number"],
body.ogonki-modern.og-catalog-page .sidebar.left_content input[type="text"],
body.ogonki-modern.og-catalog-page .sidebar.left_content input[type="number"] {
    min-height: 40px;
    border-color: var(--og-cat-line-strong);
    border-radius: 10px;
    background: var(--og-cat-surface-2);
    color: var(--og-cat-text);
}

/* ---------- Product grid ---------- */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin: 0 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products::before,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products::after {
    display: none !important;
    content: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products > [class*="col-"] {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
    position: relative;
    display: flex;
    min-height: 100%;
    flex-direction: column;
    overflow: hidden;
    padding: 12px;
    border: 1px solid var(--og-cat-line);
    border-radius: var(--og-cat-radius);
    background: var(--og-cat-surface);
    box-shadow: var(--og-cat-shadow);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover {
    border-color: rgba(166, 217, 67, .34);
    box-shadow: var(--og-cat-shadow-hover);
    transform: translateY(-3px);
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_description {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 0 !important;
    background: transparent !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    margin: 0 0 12px;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 12px;
    outline: 0 !important;
    background: var(--og-cat-surface-2) !important;
    box-shadow: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: cover;
    object-position: center;
    border: 0;
    border-radius: 0;
    transition: transform .35s ease, filter .35s ease;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .p_img_href img {
    transform: scale(1.025);
    filter: saturate(1.03) contrast(1.015);
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product {
    display: -webkit-box;
    min-height: 42px;
    margin: 0;
    overflow: hidden;
    color: var(--og-cat-text);
    font-size: 15px;
    line-height: 1.38;
    font-weight: 680;
    text-transform: none;
    letter-spacing: -.01em;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
    display: flex;
    min-height: 46px;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 18px;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
    color: var(--og-cat-text);
    font-size: 19px;
    line-height: 1.1;
    font-weight: 780;
    letter-spacing: -.02em;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart {
    display: inline-flex !important;
    min-width: 88px;
    width: auto !important;
    height: 38px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 13px !important;
    border: 1px solid var(--og-cat-line-strong) !important;
    border-radius: 11px !important;
    background: #10161b !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 720 !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .08);
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .add2cart,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart:hover {
    border-color: rgba(166, 217, 67, .38) !important;
    box-shadow: 0 10px 28px rgba(112, 168, 46, .13);
}

/* sale chip: always inset from BOTH image edges */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
    top: 22px !important;
    right: 22px !important;
    left: auto !important;
    z-index: 6 !important;
    max-width: calc(100% - 44px) !important;
    padding: 7px 11px !important;
    border: 1px solid rgba(111, 168, 46, .32) !important;
    border-radius: 999px !important;
    background: rgba(250, 252, 247, .92) !important;
    color: #5d8f2b !important;
    font-family: var(--og-font) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: .05em !important;
    text-transform: uppercase !important;
    box-shadow: 0 8px 18px rgba(15, 22, 27, .08) !important;
    backdrop-filter: blur(8px);
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product_label {
    border-color: rgba(169, 220, 70, .32) !important;
    background: rgba(20, 27, 31, .92) !important;
    color: #c8f164 !important;
}

/* ---------- Category text / SEO copy ---------- */
body.ogonki-modern.og-catalog-page .og-category-copy {
    position: relative;
    margin: 34px 0 0;
    padding: 22px 24px;
    overflow: hidden;
    border: 1px solid var(--og-cat-line);
    border-radius: 16px;
    background: var(--og-cat-surface);
    color: var(--og-cat-muted);
    font-size: 14px;
    line-height: 1.75;
}

body.ogonki-modern.og-catalog-page .og-category-copy:not(.is-expanded) {
    max-height: 220px;
}

body.ogonki-modern.og-catalog-page .og-category-copy:not(.is-expanded)::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 76px;
    background: linear-gradient(to bottom, transparent, var(--og-cat-surface) 72%);
    pointer-events: none;
}

body.ogonki-modern.og-catalog-page .og-category-copy-toggle {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
    padding: 0 14px;
    border: 1px solid var(--og-cat-line-strong);
    border-radius: 10px;
    background: var(--og-cat-surface);
    color: var(--og-cat-text);
    font-size: 12px;
    font-weight: 720;
}

/* ---------- Recommended moved into content flow ---------- */
body.ogonki-modern.og-catalog-page .og-catalog-recommended {
    clear: both;
    width: 100%;
    margin: 42px 0 0;
}

body.ogonki-modern.og-catalog-page .og-catalog-recommended .like_h2,
body.ogonki-modern.og-catalog-page .og-catalog-recommended h2,
body.ogonki-modern.og-catalog-page .og-catalog-recommended h3 {
    margin: 0 0 20px;
    color: var(--og-cat-text);
    font-size: 24px;
    line-height: 1.15;
    font-weight: 760;
    letter-spacing: -.02em;
    text-transform: none;
}

/* ---------- Mobile tools ---------- */
body.ogonki-modern.og-catalog-page .og-catalog-mobile-tools {
    display: none;
}

body.ogonki-modern .og-filter-sheet,
body.ogonki-modern .og-filter-backdrop {
    display: none;
}

@media (min-width: 2200px) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    body.ogonki-modern.og-catalog-page main > .container,
    body.ogonki-modern.og-catalog-page .page-wrap > .container {
        width: min(1180px, calc(100% - 32px));
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
    }
}

@media (max-width: 991px) {
    body.ogonki-modern.og-catalog-page main > .container,
    body.ogonki-modern.og-catalog-page .page-wrap > .container {
        width: 100%;
        padding-left: 16px;
        padding-right: 16px;
    }

    body.ogonki-modern.og-catalog-page .category_heading,
    body.ogonki-modern.og-catalog-page .category_heading.mobile {
        margin-top: 14px;
        font-size: 31px;
    }

    body.ogonki-modern.og-catalog-page .og-catalog-mobile-tools {
        position: sticky;
        top: 64px;
        z-index: 61;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin: 0 0 16px;
        padding: 8px 0;
        background: color-mix(in srgb, var(--og-cat-bg) 92%, transparent);
        backdrop-filter: blur(14px);
    }

    body.ogonki-modern.og-catalog-page .og-catalog-mobile-tools button {
        min-height: 44px;
        border: 1px solid var(--og-cat-line-strong);
        border-radius: 12px;
        background: var(--og-cat-surface);
        color: var(--og-cat-text);
        font-family: var(--og-font);
        font-size: 13px;
        font-weight: 720;
        box-shadow: 0 8px 20px rgba(18, 25, 31, .06);
    }

    body.ogonki-modern.og-catalog-page .og-catalog-mobile-tools button::before {
        margin-right: 7px;
        color: var(--og-cat-accent-strong);
    }

    body.ogonki-modern.og-catalog-page .og-filter-trigger::before { content: "≡"; }
    body.ogonki-modern.og-catalog-page .og-sort-trigger::before { content: "↕"; }

    body.ogonki-modern.og-catalog-page .listing-header {
        display: none;
        margin: 0 0 14px;
    }

    body.ogonki-modern.og-catalog-page .listing-header.og-mobile-sort-open {
        display: block;
        animation: ogCatalogDrop .16s ease both;
    }

    @keyframes ogCatalogDrop {
        from { opacity: 0; transform: translateY(-6px); }
        to { opacity: 1; transform: translateY(0); }
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    body.ogonki-modern .og-filter-backdrop {
        position: fixed;
        inset: 0;
        z-index: 1990;
        background: rgba(6, 10, 13, .62);
        opacity: 0;
        pointer-events: none;
        transition: opacity .22s ease;
        backdrop-filter: blur(3px);
    }

    body.ogonki-modern .og-filter-sheet {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 2000;
        display: flex;
        max-height: 92vh;
        flex-direction: column;
        overflow: hidden;
        border: 1px solid var(--og-cat-line-strong, rgba(255,255,255,.12));
        border-bottom: 0;
        border-radius: 18px 18px 0 0;
        background: var(--og-cat-surface, #fff);
        color: var(--og-cat-text, #1e252c);
        box-shadow: 0 -20px 60px rgba(0, 0, 0, .24);
        transform: translateY(105%);
        transition: transform .24s ease;
    }

    body.ogonki-modern .og-filter-sheet::before {
        content: "";
        width: 42px;
        height: 4px;
        flex: 0 0 auto;
        align-self: center;
        margin: 8px auto 3px;
        border-radius: 999px;
        background: var(--og-cat-line-strong, rgba(31,40,48,.18));
    }

    body.ogonki-modern.og-filter-open {
        overflow: hidden;
    }

    body.ogonki-modern.og-filter-open .og-filter-backdrop {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }

    body.ogonki-modern.og-filter-open .og-filter-sheet {
        transform: translateY(0);
    }

    body.ogonki-modern .og-filter-sheet-head {
        display: flex;
        min-height: 54px;
        flex: 0 0 auto;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        padding: 8px 14px 10px;
        border-bottom: 1px solid var(--og-cat-line, rgba(31,40,48,.1));
    }

    body.ogonki-modern .og-filter-sheet-head strong {
        font-size: 18px;
        font-weight: 780;
    }

    body.ogonki-modern .og-filter-sheet-close {
        display: grid;
        width: 38px;
        height: 38px;
        place-items: center;
        border: 1px solid var(--og-cat-line, rgba(31,40,48,.1));
        border-radius: 11px;
        background: var(--og-cat-surface-2, #f5f7f6);
        color: var(--og-cat-text, #1e252c);
        font-size: 23px;
        line-height: 1;
    }

    body.ogonki-modern .og-filter-sheet-body {
        min-height: 0;
        flex: 1 1 auto;
        overflow-y: auto;
        padding: 12px 14px 18px;
    }

    body.ogonki-modern .og-filter-sheet-body #sidebar-left,
    body.ogonki-modern .og-filter-sheet-body .sidebar.left_content {
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.ogonki-modern .og-filter-sheet-foot {
        display: grid;
        grid-template-columns: .8fr 1.2fr;
        gap: 10px;
        flex: 0 0 auto;
        padding: 10px 14px max(12px, env(safe-area-inset-bottom));
        border-top: 1px solid var(--og-cat-line, rgba(31,40,48,.1));
        background: var(--og-cat-surface, #fff);
    }

    body.ogonki-modern .og-filter-sheet-foot button {
        min-height: 46px;
        border-radius: 12px;
        font-family: var(--og-font);
        font-size: 13px;
        font-weight: 760;
    }

    body.ogonki-modern .og-filter-reset {
        border: 1px solid var(--og-cat-line-strong, rgba(31,40,48,.16));
        background: transparent;
        color: var(--og-cat-text, #1e252c);
    }

    body.ogonki-modern .og-filter-apply {
        border: 1px solid var(--og-cat-accent, #a6d943);
        background: var(--og-cat-accent, #a6d943);
        color: #15200f;
    }
}

@media (max-width: 767px) {
    body.ogonki-modern.og-catalog-page main > .container,
    body.ogonki-modern.og-catalog-page .page-wrap > .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.ogonki-modern.og-catalog-page .breadcrumb {
        margin-top: 14px;
        font-size: 11px;
    }

    body.ogonki-modern.og-catalog-page .category_heading,
    body.ogonki-modern.og-catalog-page .category_heading.mobile {
        margin: 8px 0 5px;
        font-size: 28px;
    }

    body.ogonki-modern.og-catalog-page .og-catalog-count {
        margin-bottom: 12px;
        font-size: 12px;
    }

    body.ogonki-modern.og-catalog-page .og-catalog-mobile-tools {
        top: 58px;
        gap: 8px;
        margin-bottom: 12px;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
        padding: 10px;
        border-radius: 16px;
        box-shadow: 0 10px 26px rgba(18, 25, 31, .065);
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href {
        aspect-ratio: 4 / 3;
        margin-bottom: 11px;
        border-radius: 12px;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product {
        min-height: 0;
        padding: 0 2px;
        font-size: 16px;
        line-height: 1.28;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
        min-height: 44px;
        align-items: center;
        padding: 14px 2px 0;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
        font-size: 18px;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
        top: 20px !important;
        right: 20px !important;
        max-width: calc(100% - 40px) !important;
    }

    body.ogonki-modern.og-catalog-page .og-category-copy {
        margin-top: 28px;
        padding: 18px;
        border-radius: 14px;
        font-size: 14px;
        line-height: 1.65;
    }

    body.ogonki-modern.og-catalog-page .og-catalog-recommended {
        margin-top: 34px;
    }

    body.ogonki-modern.og-catalog-page .og-catalog-recommended .like_h2,
    body.ogonki-modern.og-catalog-page .og-catalog-recommended h2,
    body.ogonki-modern.og-catalog-page .og-catalog-recommended h3 {
        font-size: 22px;
    }
}


/* ==========================================================================
   0.6.3 — stable premium catalogue baseline
   IMPORTANT: keep SoloMono's proven desktop document structure. We style the
   native left/right columns instead of replacing their parent with a JS grid.
   This prevents disappearing filters, clipped product rows and giant toolbars.
   ========================================================================== */

@media (min-width: 992px) {
    body.ogonki-modern.og-catalog-page main > .container,
    body.ogonki-modern.og-catalog-page .page-wrap > .container {
        width: min(1420px, calc(100% - 48px));
        max-width: 1420px;
    }

    /* Preserve native Bootstrap flow, only tune the two catalogue columns. */
    body.ogonki-modern.og-catalog-page .sidebar.left_content {
        float: left !important;
        width: 252px !important;
        max-width: 252px !important;
        margin: 0 !important;
        padding: 0 18px 0 0 !important;
    }

    body.ogonki-modern.og-catalog-page .right_content {
        /* DOM order in SoloMono is content first, sidebar second. Float the content
           right so the native #sidebar-left really stays on the left. */
        float: right !important;
        width: calc(100% - 252px) !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 0 0 18px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
        min-height: 100%;
    }
}

/* Header / sorter: one compact toolbar, never a large empty panel. */
body.ogonki-modern.og-catalog-page .listing-header {
    min-height: 52px !important;
    margin: 0 0 18px !important;
    padding: 8px 12px !important;
    overflow: visible !important;
}

body.ogonki-modern.og-catalog-page .listing-header .sort-selector {
    display: flex !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 8px 14px !important;
}

body.ogonki-modern.og-catalog-page .listing-header .listing-header-punkt {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

body.ogonki-modern.og-catalog-page .listing-header .sorting_block {
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin: 0 !important;
}

body.ogonki-modern.og-catalog-page .listing-header .sorting_block label {
    display: inline-flex !important;
    width: auto !important;
    min-height: 32px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 7px 9px !important;
    white-space: nowrap !important;
}

/* Product cards: premium but calm, without oversized dashboard styling. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
    padding: 10px !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(18, 25, 31, .055) !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href {
    aspect-ratio: 4 / 3 !important;
    margin-bottom: 10px !important;
    border-radius: 10px !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product {
    min-height: 38px !important;
    font-size: 13px !important;
    line-height: 1.32 !important;
    font-weight: 680 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
    min-height: 43px !important;
    padding-top: 11px !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
    font-size: 17px !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
    top: 16px !important;
    right: 16px !important;
    max-width: calc(100% - 32px) !important;
    padding: 6px 9px !important;
    font-size: 9px !important;
}

/* Desktop sidebar: visible and usable; no accidental relocation. */
@media (min-width: 992px) {
    body.ogonki-modern.og-catalog-page .sidebar.left_content,
    body.ogonki-modern.og-catalog-page #sidebar-left {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    body.ogonki-modern.og-catalog-page .sidebar.left_content .box-category,
    body.ogonki-modern.og-catalog-page #sidebar-left .box,
    body.ogonki-modern.og-catalog-page #sidebar-left .filter_box {
        margin-bottom: 10px !important;
        border-radius: 12px !important;
    }
}


/* Safety: recommendation styling must never be applied to the catalogue root. */
body.ogonki-modern.og-catalog-page main > .container.og-catalog-recommended,
body.ogonki-modern.og-catalog-page .page-wrap > .container.og-catalog-recommended {
    clear: none !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}

/* Recommendation block should belong to the content column, not float alone. */
body.ogonki-modern.og-catalog-page .og-catalog-recommended {
    clear: both !important;
    width: 100% !important;
    margin: 34px 0 0 !important;
    padding-top: 22px !important;
    border-top: 1px solid var(--og-cat-line) !important;
}

body.ogonki-modern.og-catalog-page .og-catalog-recommended .like_h2,
body.ogonki-modern.og-catalog-page .og-catalog-recommended h2,
body.ogonki-modern.og-catalog-page .og-catalog-recommended h3 {
    font-size: 21px !important;
    text-align: left !important;
}

/* Mobile remains editorial: one product per row and compact controls. */
@media (max-width: 767px) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
        padding: 10px !important;
        border-radius: 13px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href {
        aspect-ratio: 4 / 3 !important;
        border-radius: 9px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product {
        font-size: 15px !important;
        line-height: 1.28 !important;
    }
}

/* ========================================================================== */
/* v0.6.4 — premium catalogue product card only                               */
/* Scope intentionally limited to product cards inside catalogue listings.    */
/* ========================================================================== */

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 11px !important;
    border: 1px solid transparent !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(250, 252, 250, 1) 100%) !important;
    box-shadow:
        0 14px 34px rgba(18, 25, 31, .07),
        inset 0 0 0 1px rgba(31, 40, 48, .075) !important;
    transform: translateZ(0);
    transition: transform .24s ease, box-shadow .24s ease, background-color .24s ease !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product {
    background:
        linear-gradient(180deg, rgba(24, 30, 35, 1) 0%, rgba(20, 26, 31, 1) 100%) !important;
    box-shadow:
        0 16px 38px rgba(0, 0, 0, .24),
        inset 0 0 0 1px rgba(255, 255, 255, .065) !important;
}

@media (hover: hover) and (pointer: fine) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover {
        border-color: transparent !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(251, 253, 249, 1) 100%) !important;
        box-shadow:
            0 24px 58px rgba(18, 25, 31, .13),
            0 8px 22px rgba(122, 168, 54, .055),
            inset 0 0 0 1px rgba(166, 217, 67, .18) !important;
        transform: translateY(-4px) !important;
    }

    html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover,
    body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product:hover {
        border-color: transparent !important;
        background:
            linear-gradient(180deg, rgba(25, 32, 37, 1) 0%, rgba(20, 27, 32, 1) 100%) !important;
        box-shadow:
            0 26px 64px rgba(0, 0, 0, .38),
            0 10px 30px rgba(169, 220, 70, .055),
            inset 0 0 0 1px rgba(169, 220, 70, .16) !important;
    }
}

/* Neutralise old SoloMono hover/focus rectangles inside the card. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_description,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .p_description,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .new_old_price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .listing_attrs,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .listing_attrs {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .listing_attrs {
    display: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href:hover,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href:focus {
    position: relative;
    aspect-ratio: 4 / 3 !important;
    margin: 0 0 13px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 13px !important;
    outline: 0 !important;
    background: var(--og-cat-surface-2) !important;
    box-shadow: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform .42s cubic-bezier(.2, .7, .2, 1), filter .42s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .p_img_href img {
        transform: scale(1.035) !important;
        filter: saturate(1.035) contrast(1.015) brightness(1.01) !important;
    }
}

/* Sale badge: premium graphite/lime capsule, inset from the PHOTO edge. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
    top: 25px !important;
    right: 25px !important;
    left: auto !important;
    z-index: 8 !important;
    min-width: 72px !important;
    max-width: calc(100% - 50px) !important;
    min-height: 29px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(169, 220, 70, .28) !important;
    border-radius: 999px !important;
    background: rgba(18, 24, 28, .92) !important;
    color: #c9f066 !important;
    font-family: var(--og-font) !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 820 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
    box-shadow:
        0 8px 20px rgba(0, 0, 0, .16),
        inset 0 0 0 1px rgba(255, 255, 255, .025) !important;
    backdrop-filter: blur(10px) saturate(1.08);
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product_label {
    border-color: rgba(169, 220, 70, .30) !important;
    background: rgba(13, 18, 21, .88) !important;
    color: #cef56d !important;
}

/* Title: editorial, calm, and stable at two lines. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:link,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:visited,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:hover {
    display: -webkit-box !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--og-cat-text) !important;
    font-family: var(--og-font) !important;
    font-size: 14px !important;
    line-height: 1.36 !important;
    font-weight: 690 !important;
    letter-spacing: -.012em !important;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* Price + CTA form one compact footer row instead of floating far apart. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
    display: flex !important;
    width: 100% !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 8px 0 0 !important;
    padding: 8px 0 0 !important;
    background: transparent !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
    color: #27351f !important;
    font-family: var(--og-font) !important;
    font-size: 18px !important;
    line-height: 1.05 !important;
    font-weight: 820 !important;
    letter-spacing: -.025em !important;
    text-transform: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price::before {
    content: "";
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--og-cat-accent);
    box-shadow: 0 0 0 4px rgba(166, 217, 67, .11), 0 0 14px rgba(166, 217, 67, .24);
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price > span {
    color: #e6f3c9 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .old_price {
    color: var(--og-cat-muted) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart {
    flex: 0 0 auto !important;
    min-width: 94px !important;
    width: auto !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid rgba(126, 174, 58, .30) !important;
    border-radius: 12px !important;
    outline: 0 !important;
    background: linear-gradient(180deg, #151c20 0%, #0e1418 100%) !important;
    color: #f7faf8 !important;
    font-family: var(--og-font) !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
    font-weight: 760 !important;
    letter-spacing: .005em !important;
    box-shadow:
        0 10px 24px rgba(15, 22, 27, .10),
        inset 0 1px 0 rgba(255, 255, 255, .035) !important;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product:hover .add2cart,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart:hover,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart:hover {
        border-color: rgba(169, 220, 70, .52) !important;
        background: linear-gradient(180deg, #18221d 0%, #101815 100%) !important;
        box-shadow:
            0 12px 28px rgba(15, 22, 27, .15),
            0 0 22px rgba(169, 220, 70, .10) !important;
        transform: translateY(-1px);
    }
}

/* Accessible focus without the old rectangular browser/legacy outline. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product a:focus,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product button:focus {
    outline: 0 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product a:focus-visible,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product button:focus-visible,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart:focus-visible,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart:focus-visible {
    outline: 2px solid rgba(169, 220, 70, .78) !important;
    outline-offset: 3px !important;
}

@media (max-width: 767px) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product {
        padding: 9px !important;
        border-radius: 14px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href:hover,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .p_img_href:focus {
        margin-bottom: 11px !important;
        border-radius: 11px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
        top: 19px !important;
        right: 19px !important;
        max-width: calc(100% - 38px) !important;
        min-width: 68px !important;
        min-height: 27px !important;
        padding: 0 10px !important;
        font-size: 9px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:link,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:visited,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:hover {
        min-height: 38px !important;
        font-size: 14px !important;
        line-height: 1.34 !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
        min-height: 40px !important;
        gap: 9px !important;
        margin-top: 6px !important;
        padding-top: 6px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
        font-size: 17px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price {
        gap: 7px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price::before {
        flex-basis: 6px;
        width: 6px;
        height: 6px;
        box-shadow: 0 0 0 3px rgba(166, 217, 67, .10), 0 0 10px rgba(166, 217, 67, .18);
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart {
        min-width: 88px !important;
        height: 38px !important;
        padding: 0 12px !important;
        border-radius: 11px !important;
        font-size: 11px !important;
    }
}


/* ========================================================================== */
/* v0.6.5 — rating row + review deep-link in catalogue cards                  */
/* ========================================================================== */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating {
    display: flex;
    min-height: 23px;
    align-items: center;
    gap: 8px;
    margin: 5px 0 0;
    color: var(--og-cat-muted);
    font-family: var(--og-font);
    font-size: 11px;
    line-height: 1.2;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: #c58d20;
    line-height: 1;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars .quantity_rating,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars #comment-tab-count {
    display: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars svg {
    width: 13px !important;
    height: 13px !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-fallback {
    letter-spacing: .06em;
    font-size: 12px;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars.is-empty {
    color: rgba(117, 127, 136, .45);
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:visited {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 2px 0;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--og-cat-muted) !important;
    font-family: var(--og-font) !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 620 !important;
    text-decoration: none !important;
    transition: color .18s ease, transform .18s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:hover {
        color: #6f8f2d !important;
        transform: translateX(1px);
    }

    html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:hover,
    body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .og-card-review-link:hover {
        color: #b9e75a !important;
    }
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .og-card-rating-stars {
    color: #e1b35b;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .og-card-review-link {
    color: rgba(230, 236, 239, .62) !important;
}

/* Rating fills the previously empty gap above price without making the card taller. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
    margin-top: 3px !important;
    padding-top: 4px !important;
}

@media (max-width: 767px) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating {
        min-height: 22px;
        margin-top: 4px;
        gap: 7px;
        font-size: 10.5px;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:visited {
        min-height: 22px;
        font-size: 10.5px !important;
    }
}

/* ========================================================================== */
/* v0.6.6 — premium listing card: rating, real variants, BYN graphic mark     */
/* ========================================================================== */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:link,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:visited,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:hover {
    min-height: 38px !important;
    padding: 0 3px !important;
    font-size: 14px !important;
    line-height: 1.34 !important;
    font-weight: 690 !important;
    text-transform: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating {
    display: flex !important;
    min-height: 22px !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin: 4px 3px 0 !important;
    color: var(--og-cat-muted) !important;
    font-family: var(--og-font) !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars {
    display: inline-flex !important;
    align-items: center !important;
    color: #c79a42 !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-stars,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .og-card-rating-stars {
    color: #ddb45e !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-stars {
    position: relative;
    display: inline-block;
    width: 54px;
    height: 13px;
    overflow: hidden;
    white-space: nowrap;
    font-size: 11.5px;
    line-height: 13px;
    letter-spacing: 0;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-stars-empty,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-stars-fill {
    position: absolute;
    inset: 0 auto auto 0;
    display: block;
    height: 13px;
    white-space: nowrap;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-stars-empty {
    color: rgba(120, 128, 135, .28);
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-stars-fill {
    width: var(--og-rating-fill, 0%);
    overflow: hidden;
    color: currentColor;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-value {
    color: var(--og-cat-text);
    font-size: 10.5px;
    font-weight: 760;
    letter-spacing: -.01em;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:visited {
    display: inline-flex !important;
    min-height: 18px !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 0 !important;
    color: var(--og-cat-muted) !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:not(.is-empty)::before {
    content: "·";
    margin-right: 1px;
    color: rgba(116, 126, 134, .62);
    font-weight: 800;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link.is-empty {
    gap: 5px !important;
    color: rgba(117, 127, 136, .78) !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-empty-star {
    color: rgba(117, 127, 136, .78);
    font-size: 13px;
    line-height: 1;
}

@media (hover: hover) and (pointer: fine) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:hover {
        color: #648527 !important;
        transform: none !important;
    }

    html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:hover,
    body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .og-card-review-link:hover {
        color: #bfe85e !important;
    }
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-meta {
    display: flex;
    min-height: 25px;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 10px;
    margin: 3px 3px 0;
    color: var(--og-cat-muted);
    font-family: var(--og-font);
    font-size: 10px;
    line-height: 1.2;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    white-space: nowrap;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-meta-item svg {
    width: 13px;
    height: 13px;
    flex: 0 0 13px;
    fill: none;
    stroke: #86a83e;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-meta-item svg,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .og-card-meta-item svg {
    stroke: #a9d84e;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
    min-height: 42px !important;
    align-items: center !important;
    margin: 7px 3px 0 !important;
    padding: 6px 0 0 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
    color: #314322 !important;
    font-size: 18px !important;
    font-weight: 830 !important;
    letter-spacing: -.025em !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price > span {
    color: #dff0ba !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price::before {
    display: none !important;
    content: none !important;
}

/* The official 2026 Belarusian-ruble sign has no dependable Unicode glyph yet.
   Build it locally from the Cyrillic Б + central stability bar: no external font/CDN. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-byn-symbol {
    position: relative;
    display: inline-block;
    width: .78em;
    height: 1em;
    flex: 0 0 .78em;
    margin-left: 2px;
    color: currentColor;
    font-size: .94em;
    line-height: 1;
    vertical-align: -.03em;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-byn-symbol::before {
    content: "Б";
    position: absolute;
    inset: -.02em auto auto 0;
    color: currentColor;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em;
    line-height: 1;
    font-weight: 850;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-byn-symbol::after {
    content: "";
    position: absolute;
    left: .08em;
    right: -.01em;
    top: .55em;
    height: .085em;
    border-radius: 99px;
    background: currentColor;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart {
    min-width: 92px !important;
    height: 38px !important;
    border-radius: 11px !important;
}

/* Keep the sale capsule visibly inside the photo, with equal top/right breathing room. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
    top: 27px !important;
    right: 27px !important;
}

@media (max-width: 767px) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:link,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:visited,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .model_product:hover {
        min-height: 0 !important;
        padding: 0 2px !important;
        font-size: 13.5px !important;
        line-height: 1.32 !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating {
        min-height: 21px !important;
        margin: 4px 2px 0 !important;
        font-size: 10px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-review-link:visited,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-rating-value {
        font-size: 10px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-card-meta {
        min-height: 23px;
        gap: 5px 9px;
        margin: 2px 2px 0;
        font-size: 9.5px;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
        min-height: 40px !important;
        margin: 6px 2px 0 !important;
        padding-top: 5px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > span {
        font-size: 17px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label1.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label2.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label3.product_label,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .label4.product_label {
        top: 21px !important;
        right: 21px !important;
    }
}

/* ========================================================================== */
/* v0.6.7 — price rail + sale-price reserve                                  */
/* ========================================================================== */
/* The commercial footer of a card is one calm surface: price cluster on the
   left, CTA on the right. This removes the isolated number floating at the
   bottom of the card and also reserves a clean place for SoloMono special
   prices without inventing a discount when the engine does not provide one. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-height: 50px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 7px 0 0 !important;
    padding: 7px 8px 6px !important;
    border-top: 1px solid rgba(91, 108, 78, .11) !important;
    border-radius: 10px !important;
    background: linear-gradient(90deg, rgba(169, 220, 70, .075) 0%, rgba(169, 220, 70, .022) 44%, rgba(255, 255, 255, 0) 78%) !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .new_old_price {
    border-top-color: rgba(169, 220, 70, .13) !important;
    background: linear-gradient(90deg, rgba(169, 220, 70, .075) 0%, rgba(169, 220, 70, .018) 48%, rgba(10, 14, 17, 0) 82%) !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price {
    display: grid !important;
    grid-template-columns: auto auto !important;
    grid-template-rows: auto auto !important;
    align-items: end !important;
    justify-content: start !important;
    column-gap: 8px !important;
    row-gap: 1px !important;
    min-width: 0 !important;
    margin: 0 !important;
    color: var(--og-cat-text) !important;
    white-space: nowrap !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price::before {
    content: "Цена" !important;
    display: block !important;
    grid-column: 1 / -1 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 1px !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(96, 105, 112, .72) !important;
    font-family: var(--og-font) !important;
    font-size: 8.5px !important;
    line-height: 1 !important;
    font-weight: 720 !important;
    letter-spacing: .075em !important;
    text-transform: uppercase !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price::before,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price::before {
    color: rgba(206, 216, 221, .52) !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > .new_price {
    display: inline-flex !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-items: baseline !important;
    gap: 4px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #2d4020 !important;
    font-family: var(--og-font) !important;
    font-size: 19px !important;
    line-height: 1 !important;
    font-weight: 840 !important;
    letter-spacing: -.03em !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price .new_price {
    color: #ddf0b5 !important;
}

/* SoloMono already outputs .old_price only for a real special price. We style
   that source value instead of manufacturing a fake previous price. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .old_price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .old-price-label {
    position: relative !important;
    display: inline-flex !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-items: baseline !important;
    gap: 3px !important;
    margin: 0 0 2px !important;
    padding: 0 !important;
    color: #b75656 !important;
    font-family: var(--og-font) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: -.015em !important;
    opacity: .94 !important;
    text-decoration-line: line-through !important;
    text-decoration-thickness: 1.25px !important;
    text-decoration-color: currentColor !important;
    white-space: nowrap !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .old_price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price .old_price {
    color: #d87979 !important;
}

/* A single custom currency mark stays on the same baseline as each amount. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-byn-symbol {
    position: relative !important;
    display: inline-block !important;
    width: .72em !important;
    height: .92em !important;
    flex: 0 0 .72em !important;
    margin: 0 0 -.04em 0 !important;
    color: currentColor !important;
    font-size: .83em !important;
    line-height: 1 !important;
    vertical-align: baseline !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-byn-symbol::before {
    content: "Б" !important;
    position: absolute !important;
    inset: -.02em auto auto 0 !important;
    color: currentColor !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1em !important;
    line-height: 1 !important;
    font-weight: 850 !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .og-byn-symbol::after {
    content: "" !important;
    position: absolute !important;
    left: .06em !important;
    right: -.01em !important;
    top: .51em !important;
    height: .075em !important;
    border-radius: 99px !important;
    background: currentColor !important;
}

/* CTA is visible as part of the card's commercial footer, not only as a hover
   surprise. Hover still adds the restrained lime illumination. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .add2cart,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .added2cart {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

@media (max-width: 767px) {
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .new_old_price {
        min-height: 48px !important;
        gap: 8px !important;
        margin-top: 6px !important;
        padding: 6px 7px 5px !important;
        border-radius: 9px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > .new_price {
        font-size: 18px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .old_price,
    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .old-price-label {
        font-size: 10.5px !important;
    }

    body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price::before {
        font-size: 8px !important;
    }
}

/* v0.6.7 colour refinement: the amount stays premium-neutral; only the
   currency mark carries the brand accent. */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price,
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price > .new_price {
    color: #20292d !important;
}
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price .og-byn-symbol {
    color: #718f31 !important;
}
html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price .new_price {
    color: #f1f4ee !important;
}
html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .new_price .og-byn-symbol,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price .new_price .og-byn-symbol {
    color: #b7df5c !important;
}


/* ========================================================================== */
/* v0.6.8 — Modern-only visual comparison price                              */
/* ========================================================================== */
body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price.og-price-has-old::before {
    content: "Цена по акции" !important;
}

body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .og-visual-old-price {
    text-decoration-line: line-through !important;
    text-decoration-thickness: 1.35px !important;
    text-decoration-color: currentColor !important;
    color: #bc5a5a !important;
}

html[data-og-theme="night"] body.ogonki-modern.og-catalog-page .right_content .row_catalog_products .product .price .og-visual-old-price,
body.ogonki-modern.og-catalog-page[data-og-color-scheme="night"] .right_content .row_catalog_products .product .price .og-visual-old-price {
    color: #df7c7c !important;
}
