        :root { --mp-red:#ef4056; --mp-dark:#2b3445; }
        /* The theme stylesheet colours selected text white on var(--vr-color-main),
           which this site doesn't define — selected text vanished. */
        ::selection { background:#ef4056 !important; color:#fff; }
        ::-moz-selection { background:#ef4056 !important; color:#fff; }
        body { background:#f5f5f7; }
        /* ---- Top bar ---- */
        /* Username dropdown (top-right) */
        /* ---- Main header ---- */
        /* ---- Dompet Gofee chip (header) ---- */

        /* Until the live saldo arrives, the last known one pulses softly. */
        @keyframes gwpulse { 50% { opacity:.45; } }
        @media (max-width:768px) {
        }
        /* Header phone / hotline */
        /* ---- Category nav ---- */
        /* Site links group — visually distinct from product categories */
        @media (max-width:768px) {
        }
        /* ---- Sections & cards polish ---- */
        .section-header .title { font-size:1.25rem; font-weight:700; color:var(--mp-dark); }
        .section-header .title a { color:inherit; text-decoration:none; }
        .section { margin-top:1.6rem; }
        .product-item { background:#fff; border:1px solid #eee; border-radius:10px; padding:10px; height:100%; transition:box-shadow .15s; }
        .product-item:hover { box-shadow:0 8px 22px rgba(0,0,0,.09); }
        .price { color:var(--mp-red); font-weight:700; }
        /* ---- Footer ---- */

        /* ============ Storefront marketplace polish (all front pages) ============ */
        body { background:#f4f5f7; color:var(--mp-dark); }
        .container { max-width:1200px; }
        a { transition:color .15s ease; }

        /* Section headers with a red accent bar */
        .section { margin-top:2rem; }
        .section-header { align-items:center; margin-bottom:1.1rem; }
        .section-header .title { position:relative; padding-left:.8rem; font-size:1.3rem; }
        .section-header .title::before { content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:4px; height:1.05em; background:var(--mp-red); border-radius:3px; }
        .section-header .font-600, .section-header a.font-600 { color:var(--mp-red); font-weight:600; font-size:.85rem; text-decoration:none; display:inline-flex; align-items:center; gap:.25rem; }

        /* Buttons */
        .btn-custom { background:var(--mp-red); border:0; color:#fff; border-radius:8px; font-weight:600; }
        .btn-custom:hover { background:#d92f45; color:#fff; }

        /* Product card (works with the MarketPro product-item markup) */
        .row-product { --gap:16px; }
        .col-product { margin-bottom:var(--gap); }
        .product-item { background:#fff; border:1px solid #e7e9ee; border-radius:12px; padding:0; overflow:hidden; height:100%;
            display:flex; flex-direction:column; box-shadow:0 1px 3px rgba(16,24,40,.06);
            transition:box-shadow .18s ease, transform .18s ease, border-color .18s ease; }
        .product-item:hover { box-shadow:0 12px 28px rgba(0,0,0,.12); transform:translateY(-4px); border-color:#dfe3e8; }
        .product-item > .row-custom:first-child { position:relative; }
        .ratio-product-box { display:block; position:relative; width:100%; aspect-ratio:1/1; background:#fff; overflow:hidden; }
        .ratio-product-box a { display:block; width:100%; height:100%; }
        .img-product { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
        .product-item:hover .img-product { transform:scale(1.06); }
        /* Clean placeholder for products without a photo */
        .mp-noimg { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center;
            gap:.4rem; background:#f2f4f7; color:#b3bac6; font-size:.72rem; letter-spacing:.02em; }
        .mp-noimg svg { width:40px; height:40px; opacity:.7; }
        .product-item .item-details { padding:.8rem 1.1rem 1.1rem; display:flex; flex-direction:column; flex:1; margin:0; }
        .product-title { font-size:.9rem; line-height:1.35; margin:0 0 .3rem; font-weight:500; min-height:2.45em;
            display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
        .product-title a { color:var(--mp-dark); text-decoration:none; }
        .product-title a:hover { color:var(--mp-red); }
        .product-user { font-size:.75rem; color:#8a94a6; margin-bottom:.3rem; }
        .product-user a { color:#8a94a6; text-decoration:none; }
        .product-user a:hover { color:var(--mp-red); }
        .item-meta { margin-top:auto; }
        .item-meta .price { font-size:1.05rem; }
        .item-meta .discount-original-price { font-size:.78rem; color:#b0b7c3; margin-left:.4rem; }
        .badge-discount { position:absolute; top:8px; right:8px; z-index:2; background:var(--mp-red); color:#fff; font-size:.7rem; font-weight:600; padding:3px 7px; border-radius:6px; }

        /* Card hover actions (wishlist / cart) */
        .product-item-options { position:absolute; top:8px; left:8px; z-index:3; display:flex; flex-direction:column; gap:.4rem;
            opacity:0; transform:translateX(-8px); transition:opacity .18s ease, transform .18s ease; }
        .product-item:hover .product-item-options { opacity:1; transform:none; }
        .product-item-options .item-option, .product-item-options form { display:flex; }
        .item-option { width:34px; height:34px; padding:0; border-radius:50%; background:#fff; border:1px solid #eef0f2;
            box-shadow:0 2px 8px rgba(0,0,0,.14); display:flex; align-items:center; justify-content:center; color:var(--mp-dark); cursor:pointer; text-decoration:none; }
        .item-option:hover { background:var(--mp-red); color:#fff; border-color:var(--mp-red); }
        .item-option.in-wishlist { color:var(--mp-red); }
        .item-option.in-wishlist:hover { color:#fff; }
        /* A wishlisted card keeps its heart visible. */
        .product-item-options:has(.in-wishlist) { opacity:1; transform:none; }
        .product-item-options .item-option.in-wishlist { opacity:1; } /* the theme hides buttons until hover */
        .product-item-options:has(.in-wishlist) .item-option:not(.in-wishlist) { visibility:hidden; }
        .product-item:hover .product-item-options .item-option { visibility:visible; opacity:1; } /* the theme only does this >= 992px */
        @media (hover: none) { /* touch screens have no hover: keep the buttons shown */
            .product-item-options, .product-item-options .item-option { opacity:1; transform:none; visibility:visible !important; }
        }
        .product-item-rating { margin:.1rem 0 .35rem; }

        /* Featured category cards */
        .featured-category-card { background:#fff; border:1px solid #eef0f2; border-radius:12px; color:var(--mp-dark);
            text-decoration:none; font-weight:600; padding:1.35rem .6rem; transition:all .18s ease; }
        .featured-category-card:hover { border-color:var(--mp-red); color:var(--mp-red); box-shadow:0 10px 22px rgba(0,0,0,.08); transform:translateY(-3px); }
        .featured-category-name { font-size:.95rem; }

        /* Generic card container used by cart/checkout/detail/etc. */
        .mp-card { background:#fff; border:1px solid #eef0f2; border-radius:12px; }

        /* ============ Responsive (tablet / mobile) ============ */
        @media (max-width:992px) {
        }
        @media (max-width:768px) {
            /* Top bar wraps and shrinks */

            /* Header: logo + actions on row 1, full-width search drops to row 2 */

            /* Category nav */

            /* Sections a touch tighter */
            .section { margin-top:1.4rem; }
            .section-header .title { font-size:1.12rem; }
        }
        @media (max-width:576px) {
            .product-title { font-size:.85rem; }
            .item-meta .price { font-size:.98rem; }
        }
