    /* ===== CSS Variables (match sooq-category design language) ===== */
    :root {
        --pd-blue: #1f9dc7;
        --pd-indigo: #178ab0;
        --pd-grad: linear-gradient(135deg, #1f9dc7, #178ab0);
        --pd-grad-green: linear-gradient(135deg, #16a34a, #15803d);
        --pd-surf: #f8fafc;
        --pd-border: rgba(15, 23, 42, .08);
        --pd-shadow-sm: 0 4px 16px rgba(15, 23, 42, .06);
        --pd-shadow-md: 0 14px 40px rgba(15, 23, 42, .08);
        --pd-shadow-lg: 0 24px 60px rgba(15, 23, 42, .12);
        --pd-r: 18px;
        --pd-r-sm: 12px;
        --pd-r-xs: 8px;
    }

    /* ===== Base Layout ===== */
    .pd-page {
        font-family: "Cairo", system-ui, -apple-system, sans-serif;
        padding: 0 0 80px;
        background: #f1f4f9;
        min-height: 100vh;
        overflow-x: hidden;
    }

    .pd-shell {
        max-width: 1440px;
        margin: 0 auto;
        overflow-x: hidden;
    }

    @media (max-width: 767px) {
        .pd-shell {
            padding: 0 12px;
            box-sizing: border-box;
        }
    }

    /* ===== Sticky Top Bar ===== */
    .pd-topbar {
        position: sticky;
        top: 0;
        z-index: 100;
        background: rgba(255, 255, 255, .92);
        backdrop-filter: blur(18px);
        -webkit-backdrop-filter: blur(18px);
        border-bottom: 1px solid var(--pd-border);
        padding: 0 16px;
        height: 58px;
        display: flex;
        align-items: center;
        gap: 12px;
        box-shadow: 0 4px 20px rgba(15, 23, 42, .06);
    }

    .pd-topbar-back {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        border-radius: 12px;
        border: 1px solid var(--pd-border);
        background: #fff;
        color: #0f172a;
        text-decoration: none;
        box-shadow: var(--pd-shadow-sm);
        flex-shrink: 0;
        transition: transform .15s ease, box-shadow .15s ease;
    }

    .pd-topbar-back:hover {
        transform: translateY(-1px);
        box-shadow: var(--pd-shadow-md);
        color: #0f172a;
    }

    .pd-topbar-title {
        font-weight: 800;
        font-size: .95rem;
        color: #0f172a;
        flex: 1;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        line-height: 1.2;
    }

    .pd-topbar-share {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 12px;
        border-radius: 12px;
        border: 1px solid var(--pd-border);
        background: #fff;
        color: #0f172a;
        font-weight: 700;
        font-size: .85rem;
        cursor: pointer;
        box-shadow: var(--pd-shadow-sm);
        flex-shrink: 0;
        transition: transform .15s ease;
    }

    .pd-topbar-share:hover {
        transform: translateY(-1px);
    }

    /* ===== Cards ===== */
    .pd-card {
        background: #fff;
        border: 1px solid var(--pd-border);
        border-radius: var(--pd-r);
        box-shadow: var(--pd-shadow-md);
        overflow: hidden;
        min-width: 0;
    }

    .pd-pad {
        padding: 20px;
    }

    @media (max-width: 576px) {
        .pd-pad {
            padding: 14px 12px;
        }
    }

    /* ===== Section Titles ===== */
    .pd-h {
        font-weight: 800;
        color: #0f172a;
        margin: 0 0 16px;
        font-size: 1rem;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .pd-h::before {
        content: '';
        display: inline-block;
        width: 4px;
        height: 18px;
        border-radius: 4px;
        background: var(--pd-grad);
        flex-shrink: 0;
    }

    /* ===== Gallery ===== */
    .pd-gallery-card {
        padding: 0;
    }

    .pd-gallery-top {
        position: relative;
        width: 100%;
    }

    .pd-gallery-stage {
        position: relative;
        width: 100%;
        overflow: hidden;
        background: var(--pd-surf);
    }

    .pd-gallery-top .pdMainSwiper {
        width: 100%;
        overflow: hidden;
    }

    .pd-gallery-top .pdMainSwiper .swiper-slide {
        width: 100%;
        flex-shrink: 0;
    }

    .pd-gallery-top figure {
        margin: 0;
        width: 100%;
        background: var(--pd-surf);
        aspect-ratio: 16/7;
        overflow: hidden;
    }

    .pd-gallery-top img {
        width: 100%;
        height: 100%;
        max-width: none;
        object-fit: cover;
        display: block;
    }

    @media (max-width: 991px) {
        .pd-gallery-top figure {
            aspect-ratio: 4/3;
        }
    }

    @media (max-width: 576px) {
        .pd-gallery-top figure {
            aspect-ratio: 1/1;
        }
    }

    .pd-gallery-overlays {
        position: absolute;
        inset: 0;
        z-index: 10;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        padding: 14px;
        gap: 12px;
        pointer-events: none;
    }

    .pd-gallery-overlays > * {
        pointer-events: auto;
    }

    .pd-gallery-badge {
        background: rgba(15, 23, 42, .72);
        color: #fff;
        padding: 7px 12px;
        border-radius: 12px;
        font-weight: 700;
        font-size: .82rem;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, .12);
        flex-shrink: 0;
    }

    .pd-gallery-open {
        background: #fff;
        color: #0f172a;
        padding: 9px 14px;
        border-radius: 12px;
        font-weight: 700;
        font-size: .85rem;
        border: 1px solid rgba(15, 23, 42, .10);
        box-shadow: var(--pd-shadow-md);
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        transition: transform .15s ease, box-shadow .15s ease;
        flex-shrink: 0;
    }

    .pd-gallery-open:hover {
        transform: translateY(-2px);
        box-shadow: var(--pd-shadow-lg);
    }

    /* Gallery slider nav arrows */
    .slider-navigation {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 12px;
        pointer-events: none;
        z-index: 5;
    }

    .slider-navigation .slider-btn {
        pointer-events: auto;
        width: 44px;
        height: 44px;
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 8px 24px rgba(2, 6, 23, .16);
        border: 1px solid rgba(15, 23, 42, .07);
        color: #0f172a;
        transition: transform .12s ease, box-shadow .12s ease;
    }

    .slider-navigation .slider-btn i {
        font-size: 17px;
    }

    .slider-navigation .slider-btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 16px 40px rgba(2, 6, 23, .18);
    }

    /* Thumbnail strip */
    .pd-thumbs-wrap {
        border-top: 1px solid rgba(15, 23, 42, .05);
        padding: 12px 14px;
        background: #fafbfc;
    }

    .pd-thumb {
        border-radius: 10px;
        overflow: hidden;
        border: 2px solid transparent;
        background: var(--pd-surf);
        aspect-ratio: 1/1;
        transition: border-color .15s ease, opacity .15s ease;
        cursor: pointer;
        opacity: .75;
    }

    .pd-thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .pd-thumb.is-active,
    .pdThumbsSwiper .swiper-slide-thumb-active .pd-thumb {
        border-color: var(--pd-blue);
        opacity: 1;
    }

    /* ===== Main two-column content area ===== */
    .pd-layout {
        display: grid;
        grid-template-columns: 1fr 340px;
        gap: 16px;
        align-items: start;
        margin-top: 0;
    }

    .pd-layout>* {
        min-width: 0;
    }

    @media (max-width: 1100px) {
        .pd-layout {
            grid-template-columns: 1fr 300px;
        }
    }

    @media (max-width: 900px) {
        .pd-layout {
            grid-template-columns: 1fr;
        }
    }

    /* Right sidebar sticks on desktop */
    .pd-sidebar {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    @media (min-width: 900px) {
        .pd-sidebar {
            position: sticky;
            top: 74px;
        }
    }

    /* ===== Title + Price ===== */
    .pd-title-block {
        margin-bottom: 12px;
    }

    .pd-title {
        font-weight: 800;
        font-size: 1.4rem;
        color: #0f172a;
        line-height: 1.25;
        margin: 0 0 10px;
    }

    @media (max-width: 576px) {
        .pd-title {
            font-size: 1.15rem;
        }
    }

    .pd-price-row {
        display: flex;
        align-items: baseline;
        gap: 10px;
        flex-wrap: wrap;
    }

    .pd-price {
        font-weight: 900;
        font-size: 1.6rem;
        background: var(--pd-grad);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        line-height: 1.1;
    }

    .pd-old {
        font-weight: 700;
        font-size: .95rem;
        color: #94a3b8;
        text-decoration: line-through;
    }

    .pd-discount-badge {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        background: linear-gradient(135deg, #ef4444, #dc2626);
        color: #fff;
        font-weight: 700;
        font-size: .75rem;
        padding: 3px 9px;
        border-radius: 8px;
    }

    .pd-views-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        margin-top: 10px;
        padding: 5px 13px;
        border-radius: 99px;
        background: var(--pd-surf);
        border: 1px solid var(--pd-border);
        font-size: .8rem;
        font-weight: 600;
        color: #64748b;
        letter-spacing: .01em;
    }

    .pd-views-chip i {
        font-size: .82rem;
        color: #94a3b8;
    }

    /* ===== Description ===== */
    .pd-desc {
        margin-top: 14px;
        line-height: 1.9;
        color: #334155;
        font-size: .96rem;
        border-top: 1px solid var(--pd-border);
        padding-top: 14px;
    }

    /* ===== Responsive helpers ===== */
    .d-mobile-only {
        display: none;
    }

    .d-desktop-only {
        display: block;
    }

    @media (max-width: 767px) {
        .d-mobile-only {
            display: block;
        }

        .d-desktop-only {
            display: none !important;
        }
    }

    /* ===== Specifications 2-col grid ===== */
    .pd-spec-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .pd-spec-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 11px 14px;
        border-radius: 8px;
        background: #f4f6fb;
        gap: 10px;
        min-height: 46px;
        min-width: 0;
    }

    .pd-spec-row .sk {
        color: #64748b;
        font-size: .88rem;
        font-weight: 500;
        flex-shrink: 0;
        max-width: 50%;
        word-break: break-word;
    }

    .pd-spec-row .sv {
        color: #0f172a;
        font-size: .88rem;
        font-weight: 700;
        text-align: end;
        min-width: 0;
        flex: 1;
        overflow-wrap: break-word;
        word-break: break-word;
    }

    .pd-spec-showmore {
        margin-top: 14px;
        text-align: center;
    }

    .pd-spec-showmore button {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 0;
        background: none;
        border: none;
        color: #6d28d9;
        font-size: .9rem;
        font-weight: 700;
        cursor: pointer;
    }

    .pd-spec-showmore button:hover {
        text-decoration: underline;
    }

    /* ===== Mobile spec row overrides — clean divider list ===== */
    @media (max-width: 767px) {
        .pd-spec-grid {
            grid-template-columns: 1fr;
            gap: 0;
        }

        .pd-spec-row {
            background: none;
            border-radius: 0;
            border-bottom: 1px solid var(--pd-border);
            padding: 13px 2px;
            min-height: unset;
        }

        .pd-spec-row:last-child {
            border-bottom: none;
        }

        .pd-spec-row .sk {
            font-size: .9rem;
            color: #475569;
            max-width: 48%;
        }

        .pd-spec-row .sv {
            font-size: .9rem;
            font-weight: 600;
            color: #0f172a;
            max-width: 50%;
        }

        .pd-spec-showmore {
            margin-top: 10px;
            display: flex;
            justify-content: center;
        }

        .pd-spec-showmore button {
            border: 1.5px solid #cbd5e1;
            border-radius: 99px;
            padding: 8px 22px;
            background: #fff;
            color: #334155;
            font-size: .9rem;
            font-weight: 600;
        }

        .pd-spec-showmore button:hover {
            background: #f1f5f9;
            text-decoration: none;
        }
    }

    /* ===== Additional Specifications — Mobile tabs ===== */
    .pd-addspec-tabs-wrap {
        overflow: hidden;
    }

    .pd-addspec-tabs {
        display: flex;
        gap: 0;
        border-bottom: 2px solid #e2e8f0;
        margin-bottom: 16px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .pd-addspec-tabs::-webkit-scrollbar {
        display: none;
    }

    .pd-addspec-tab {
        flex-shrink: 0;
        background: none;
        border: none;
        padding: 10px 18px;
        font-size: .92rem;
        font-weight: 600;
        color: #64748b;
        cursor: pointer;
        border-bottom: 2.5px solid transparent;
        margin-bottom: -2px;
        transition: color .15s, border-color .15s;
        white-space: nowrap;
    }

    .pd-addspec-tab.active {
        color: #1f9dc7;
        border-bottom-color: #1f9dc7;
    }

    .pd-addspec-panel {
        display: none;
    }

    .pd-addspec-panel.active {
        display: block;
    }

    /* ===== Chips (Additional Specs mobile items) ===== */
    .pd-chips-wrap {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .pd-chip {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        background: #f1f5f9;
        border-radius: 99px;
        padding: 6px 14px;
        font-size: .85rem;
        font-weight: 500;
        color: #334155;
    }

    .pd-chip.chip-hidden {
        display: none;
    }

    .pd-chip-check {
        color: #1f9dc7;
        font-size: .78rem;
        flex-shrink: 0;
    }

    /* ===== Features (multiselect columns) ===== */
    .pd-features-wrap {
        background: #f8f8fc;
        border-radius: 12px;
        padding: 16px;
        margin-top: 16px;
    }

    .pd-features-cols {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
        gap: 20px 12px;
    }

    .pd-features-col-head {
        font-weight: 700;
        font-size: .92rem;
        color: #0f172a;
        margin-bottom: 10px;
    }

    .pd-features-list {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 7px;
    }

    .pd-features-list li {
        display: flex;
        align-items: flex-start;
        gap: 7px;
        font-size: .88rem;
        color: #1e293b;
        font-weight: 500;
        line-height: 1.4;
    }

    .pd-features-list li.feat-hidden {
        display: none;
    }

    .pd-features-list li .fchk {
        color: #16a34a;
        font-size: .82rem;
        margin-top: 2px;
        flex-shrink: 0;
    }

    .pd-features-viewmore {
        margin-top: 12px;
        font-weight: 700;
        font-size: .88rem;
        color: #6d28d9;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 4px;
        background: none;
        border: none;
        padding: 0;
        text-decoration: none;
    }

    .pd-features-viewmore:hover {
        text-decoration: underline;
    }

    /* ===== Seller Card ===== */
    .pd-seller-top {
        display: flex;
        gap: 14px;
        align-items: center;
        margin-bottom: 14px;
    }

    .pd-seller-avatar {
        width: 60px;
        height: 60px;
        flex-shrink: 0;
        border-radius: 50%;
        overflow: hidden;
    }

    .pd-seller-avatar img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        border-radius: 50%;
    }

    .pd-seller-name {
        font-weight: 800;
        color: #0f172a;
        font-size: 1rem;
        margin: 0 0 3px;
        line-height: 1.2;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .pd-seller-sub {
        color: #64748b;
        font-size: .85rem;
        font-weight: 600;
    }

    .pd-seller-chip {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        background: var(--pd-surf);
        border: 1px solid var(--pd-border);
        border-radius: 99px;
        padding: 4px 10px;
        font-size: .78rem;
        font-weight: 700;
        color: #475569;
        margin-top: 6px;
    }

    /* Seller meta rows */
    .pd-seller-meta {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-bottom: 14px;
    }

    .pd-seller-meta-row {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 12px;
        border-radius: var(--pd-r-sm);
        background: var(--pd-surf);
        border: 1px solid var(--pd-border);
        font-weight: 600;
        font-size: .88rem;
        color: #334155;
        min-height: 42px;
    }

    .pd-seller-meta-row i {
        width: 16px;
        text-align: center;
        color: #64748b;
    }

    .pd-seller-muted {
        color: #94a3b8;
    }

    /* Rating row */
    .pd-seller-footer {
        border-top: 1px dashed rgba(15, 23, 42, .10);
        padding-top: 14px;
    }

    .pd-seller-rating {
        display: flex;
        align-items: center;
        gap: 6px;
        font-size: .88rem;
        font-weight: 700;
        color: #64748b;
        margin-bottom: 12px;
    }

    /* Call + WA buttons */
    .pd-seller-buttons {
        display: flex;
        gap: 10px;
    }

    .pd-btn-call,
    .pd-btn-wa {
        flex: 1 1 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        padding: 12px 10px;
        border-radius: var(--pd-r-sm);
        text-decoration: none;
        font-weight: 700;
        font-size: .88rem;
        border: 0;
        transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
    }

    .pd-btn-call {
        background: linear-gradient(135deg, #1f9dc7, #178ab0);
        color: #fff;
        box-shadow: 0 10px 28px rgba(31, 157, 199, .28);
    }

    .pd-btn-call:hover {
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 16px 38px rgba(31, 157, 199, .35);
    }

    .pd-btn-wa {
        background: var(--pd-grad-green);
        color: #fff;
        box-shadow: 0 10px 28px rgba(22, 163, 74, .22);
    }

    .pd-btn-wa:hover {
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 16px 38px rgba(22, 163, 74, .30);
    }

    .pd-btn-chat {
        background: linear-gradient(135deg, #0ea5e9, #0284c7);
        color: #fff;
        box-shadow: 0 10px 28px rgba(14, 165, 233, .25);
        width: 100%;
        margin-top: 8px;
    }

    .pd-btn-chat:hover {
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 16px 38px rgba(14, 165, 233, .32);
    }

    .pd-btn-disabled {
        opacity: .45;
        pointer-events: none;
    }

    /* Share button in seller card */
    .pd-share-btn {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 10px 14px;
        border-radius: var(--pd-r-sm);
        background: var(--pd-surf);
        border: 1px solid var(--pd-border);
        color: #0f172a;
        font-weight: 700;
        font-size: .9rem;
        cursor: pointer;
        transition: background .15s ease, transform .15s ease;
    }

    .pd-share-btn:hover {
        background: #f1f5f9;
        transform: translateY(-1px);
    }

    /* ===== Map card ===== */
    .pd-map {
        border-radius: var(--pd-r-sm);
        overflow: hidden;
    }

    .pd-map iframe {
        width: 100%;
        height: 300px;
        border: 0;
        display: block;
    }

    @media (max-width: 576px) {
        .pd-map iframe {
            height: 220px;
        }
    }

    /* ===== Similar Ads ===== */
    .pd-sim-wrap {
        position: relative;
    }

    .pd-sim-navbtn {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        width: 44px;
        height: 44px;
        border: 1px solid var(--pd-border);
        border-radius: var(--pd-r-sm);
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fff;
        color: #0f172a;
        box-shadow: var(--pd-shadow-md);
        cursor: pointer;
        transition: transform .12s ease, box-shadow .12s ease;
    }

    .pd-sim-navbtn:hover {
        transform: translateY(-50%) scale(1.05);
        box-shadow: var(--pd-shadow-lg);
    }

    .pd-sim-navbtn:active {
        transform: translateY(-50%) scale(.97);
    }

    .pd-sim-prev {
        left: -8px;
    }

    .pd-sim-next {
        right: -8px;
    }

    [dir="rtl"] .pd-sim-prev {
        left: auto;
        right: -8px;
    }

    [dir="rtl"] .pd-sim-next {
        right: auto;
        left: -8px;
    }

    .pd-sim-wrap .swiper {
        padding: 6px 52px;
    }

    @media (max-width: 992px) {
        .pd-sim-prev {
            left: 6px;
        }

        .pd-sim-next {
            right: 6px;
        }

        [dir="rtl"] .pd-sim-prev {
            right: 6px;
        }

        [dir="rtl"] .pd-sim-next {
            left: 6px;
        }

        .pd-sim-wrap .swiper {
            padding: 6px 46px;
        }
    }

    /* Similar ad card — equal height across all slides */
    #pdSimilarSwiper .swiper-wrapper {
        align-items: stretch;
    }

    #pdSimilarSwiper .swiper-slide {
        display: flex;
        flex-direction: column;
        height: auto;
    }

    .sim-card {
        background: #fff;
        border: 1px solid var(--pd-border);
        border-radius: var(--pd-r);
        box-shadow: var(--pd-shadow-sm);
        overflow: hidden;
        transition: transform .2s cubic-bezier(.2, .9, .2, 1), box-shadow .2s cubic-bezier(.2, .9, .2, 1);
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
    }

    .sim-card:hover {
        transform: translateY(-4px);
        box-shadow: var(--pd-shadow-lg);
    }

    .sim-img {
        aspect-ratio: 1/1;
        background: var(--pd-surf);
        overflow: hidden;
        position: relative;
    }

    .sim-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform .3s ease;
    }

    .sim-card:hover .sim-img img {
        transform: scale(1.05);
    }

    /* Image link wrapper — block so it fills the card top */
    .sim-img-link {
        display: block;
        text-decoration: none;
    }

    .sim-body {
        padding: 12px;
        flex: 1;
        display: flex;
        flex-direction: column;
    }

    /* Title as an <a> tag — inherits card text colour, no underline until hover */
    .sim-title {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        font-weight: 700;
        color: #0f172a;
        line-height: 1.3;
        font-size: .92rem;
        margin: 0 0 8px;
        text-decoration: none;
    }

    .sim-title:hover {
        color: #1495ba;
        text-decoration: underline;
    }

    .sim-price {
        font-weight: 800;
        font-size: .95rem;
        background: var(--pd-grad);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
    }

    .sim-old {
        color: #94a3b8;
        text-decoration: line-through;
        font-size: .82rem;
        font-weight: 600;
        margin-inline-start: 6px;
        -webkit-text-fill-color: #94a3b8;
    }

    .sim-views {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        font-size: .75rem;
        font-weight: 600;
        color: #94a3b8;
        margin-top: 4px;
    }

    .sim-views i {
        font-size: .72rem;
    }

    /* ===== Scroll to top ===== */
    #pdScrollTop {
        position: fixed;
        bottom: 24px;
        inset-inline-end: 24px;
        z-index: 999;
        width: 44px;
        height: 44px;
        border-radius: 14px;
        border: 0;
        background: var(--pd-grad);
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 10px 28px rgba(31, 157, 199, .30);
        cursor: pointer;
        opacity: 0;
        transform: translateY(12px) scale(.9);
        transition: opacity .2s ease, transform .2s ease;
        pointer-events: none;
    }

    #pdScrollTop.visible {
        opacity: 1;
        transform: none;
        pointer-events: auto;
    }

    #pdScrollTop:hover {
        transform: translateY(-2px) scale(1.05);
    }

    /* ===== Fullscreen Gallery Modal (kept from original, enhanced) ===== */
    .modal-backdrop.show {
        opacity: .65;
    }

    .pd-g-modal.modal {
        --pdg-bg: #ffffff;
    }

    .pd-g-modal .modal-dialog {
        margin: 0;
    }

    .pd-g-modal .modal-content {
        background: var(--pdg-bg);
        border: 0;
        box-shadow: none;
        height: 100vh;
    }

    .pd-g-modal .pd-g-topbar {
        position: sticky;
        top: 0;
        z-index: 20;
        padding: 14px 16px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        background: linear-gradient(180deg, rgba(255, 255, 255, .96) 0%, rgba(255, 255, 255, .86) 70%, rgba(255, 255, 255, 0) 100%);
        backdrop-filter: blur(10px);
    }

    .pd-g-modal .pd-g-title {
        display: flex;
        align-items: center;
        gap: 10px;
        color: #0f172a;
        font-weight: 800;
        font-size: .95rem;
    }

    .pd-g-modal .pd-g-counter {
        color: #0f172a;
        font-weight: 800;
        font-size: .9rem;
        padding: 7px 10px;
        border-radius: 10px;
        background: #f1f5f9;
        border: 1px solid var(--pd-border);
        line-height: 1;
        white-space: nowrap;
    }

    .pd-g-modal .pd-g-close {
        width: 40px;
        height: 40px;
        border: 1px solid var(--pd-border);
        border-radius: 12px;
        background: #f1f5f9;
        color: #0f172a;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: transform .15s ease, background .15s ease;
    }

    .pd-g-modal .pd-g-close:hover {
        transform: translateY(-1px);
        background: #e8eef6;
    }

    .pd-g-modal .pd-g-body {
        position: relative;
        height: calc(100vh - 70px);
        display: flex;
        flex-direction: column;
        padding: 6px 14px 14px;
        gap: 12px;
    }

    .pd-g-modal .pd-g-view {
        position: relative;
        flex: 1;
        border-radius: var(--pd-r);
        overflow: hidden;
        background: #f8fafc;
        border: 1px solid var(--pd-border);
        box-shadow: 0 18px 60px rgba(2, 6, 23, .15);
    }

    .pd-g-modal .pdModalMainSwiper {
        height: 100%;
    }

    .pd-g-modal .pdModalMainSwiper .swiper-slide {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .pd-g-modal .pdModalMainSwiper img {
        max-height: calc(100vh - 220px);
        max-width: 100%;
        width: auto;
        height: auto;
        object-fit: contain;
        display: block;
        margin: 0 auto;
        user-select: none;
        -webkit-user-drag: none;
    }

    .pd-g-modal .pd-g-navbtn {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        width: 44px;
        height: 44px;
        border: 1px solid var(--pd-border);
        border-radius: 14px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, .92);
        color: #0f172a;
        box-shadow: var(--pd-shadow-md);
        cursor: pointer;
        transition: transform .15s ease, box-shadow .15s ease;
    }

    .pd-g-modal .pd-g-navbtn:hover {
        transform: translateY(-50%) scale(1.04);
        box-shadow: var(--pd-shadow-lg);
    }

    .pd-g-modal .pd-g-left {
        left: 12px;
    }

    .pd-g-modal .pd-g-right {
        right: 12px;
    }

    .pd-g-modal .pd-g-thumbsbar {
        border-radius: var(--pd-r-sm);
        overflow: hidden;
        background: #fff;
        border: 1px solid var(--pd-border);
        box-shadow: var(--pd-shadow-sm);
        padding: 10px;
    }

    .pd-g-modal .pdModalThumbsSwiper .swiper-slide {
        width: 90px;
    }

    .pd-g-modal .pd-g-thumb {
        width: 90px;
        height: 64px;
        border-radius: 10px;
        overflow: hidden;
        background: var(--pd-surf);
        border: 2px solid transparent;
        cursor: pointer;
        transition: transform .15s ease, border-color .15s ease, opacity .15s ease;
        opacity: .8;
    }

    .pd-g-modal .pd-g-thumb:hover {
        transform: translateY(-1px);
        opacity: 1;
    }

    .pd-g-modal .pd-g-thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .pd-g-modal .pdModalThumbsSwiper .swiper-slide-thumb-active .pd-g-thumb {
        border-color: var(--pd-blue);
        opacity: 1;
    }

    @media (max-width: 768px) {
        .pd-g-modal .pdModalMainSwiper img {
            max-height: calc(100vh - 250px);
        }

        .pd-g-modal .pdModalThumbsSwiper .swiper-slide {
            width: 76px;
        }

        .pd-g-modal .pd-g-thumb {
            width: 76px;
            height: 54px;
        }

        .pd-g-modal .pd-g-navbtn {
            width: 40px;
            height: 40px;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        .pd-g-modal .pd-g-navbtn,
        .pd-g-modal .pd-g-thumb,
        .pd-g-modal .pd-g-close {
            transition: none !important;
        }
    }

    /* Report abuse modal — global (hidden by default on all viewports) */
    .pd-report-overlay {
        display: none;
        position: fixed;
        inset: 0;
        z-index: 1100;
        background: rgba(0, 0, 0, .45);
        align-items: flex-end;
        justify-content: center;
        padding: 0;
    }

    .pd-report-overlay.open {
        display: flex;
    }

    .pd-report-sheet {
        background: #fff;
        border-radius: 20px 20px 0 0;
        width: 100%;
        max-width: 480px;
        padding: 20px 20px 32px;
        max-height: 80vh;
        overflow-y: auto;
        animation: pdReportSheetUp .22s ease;
        box-shadow: 0 -8px 40px rgba(15, 23, 42, .12);
    }

    @keyframes pdReportSheetUp {
        from { transform: translateY(100%); }
        to   { transform: translateY(0); }
    }

    @keyframes pdReportModalIn {
        from { transform: translateY(12px) scale(.98); opacity: 0; }
        to   { transform: translateY(0) scale(1); opacity: 1; }
    }

    .pd-report-sheet h4 {
        font-size: 1rem;
        font-weight: 800;
        color: #1e293b;
        margin: 0 0 14px;
    }

    .pd-report-reason-list {
        margin-bottom: 14px;
    }

    .pd-report-reason-item {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 0;
        border-bottom: 1px solid #f1f5f9;
        cursor: pointer;
        font-size: .9rem;
        color: #334155;
    }

    .pd-report-reason-item input[type=radio] {
        accent-color: var(--pd-blue);
        width: 16px;
        height: 16px;
        flex-shrink: 0;
    }

    .pd-report-comment {
        width: 100%;
        border: 1.5px solid #e2e8f0;
        border-radius: 10px;
        padding: 10px 12px;
        font-size: .88rem;
        font-family: inherit;
        resize: vertical;
        outline: none;
        box-sizing: border-box;
        margin-bottom: 12px;
        transition: border-color .15s;
    }

    .pd-report-comment:focus {
        border-color: var(--pd-blue);
    }

    .pd-report-submit {
        width: 100%;
        padding: 13px;
        background: #ef4444;
        color: #fff;
        font-weight: 700;
        font-size: .95rem;
        border: none;
        border-radius: 12px;
        cursor: pointer;
        transition: opacity .15s;
    }

    .pd-report-submit:disabled {
        opacity: .55;
        cursor: default;
    }

    .pd-report-cancel {
        display: block;
        width: 100%;
        margin-top: 8px;
        text-align: center;
        padding: 10px;
        font-size: .88rem;
        color: #64748b;
        background: none;
        border: none;
        cursor: pointer;
    }

    .pd-report-msg {
        font-size: .85rem;
        font-weight: 600;
        padding: 8px 12px;
        border-radius: 8px;
        margin-bottom: 10px;
    }

    .pd-report-msg.ok  { background: #f0fdf4; color: #16a34a; }
    .pd-report-msg.err { background: #fef2f2; color: #dc2626; }

    @media (min-width: 768px) {
        .pd-report-overlay {
            align-items: center;
            padding: 24px;
        }

        .pd-report-sheet {
            border-radius: 16px;
            max-width: 440px;
            padding: 24px 24px 20px;
            max-height: min(85vh, 640px);
            animation: pdReportModalIn .22s ease;
            box-shadow: 0 24px 64px rgba(15, 23, 42, .18);
        }
    }

    @media (max-width: 767px) {
        .slider-btn.slider-btn-prev,
        .slider-btn.slider-btn-next {
            display: none !important;
        }
        .pd-sim-navbtn {
            display: none !important;
        }
    }

    /* ===== MOBILE-ONLY REDESIGN ===== */

    /* Hide topbar title on mobile */
    @media (max-width: 767px) {
        .pd-topbar-title { display: none; }

        /* Round topbar share button on mobile */
        .pd-topbar-share {
            border-radius: 50%;
            width: 38px;
            height: 38px;
            padding: 0;
            justify-content: center;
        }
        .pd-topbar-share span { display: none; }

        /* Heart/favourite button */
        .pd-topbar-fav {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 38px;
            height: 38px;
            border-radius: 50%;
            border: 1px solid var(--pd-border);
            background: #fff;
            color: var(--pd-blue);
            box-shadow: var(--pd-shadow-sm);
            cursor: pointer;
            flex-shrink: 0;
            transition: transform .15s ease;
        }
        .pd-topbar-fav:hover { transform: scale(1.08); }
        .pd-topbar-fav.is-fav { color: #ef4444; }

        /* Gallery: remove border-radius, stretch edge-to-edge */
        .pd-gallery-card {
            border-radius: 0;
            border-left: 0;
            border-right: 0;
            border-top: 0;
            box-shadow: none;
        }

        /* Hide thumbnail strip on mobile */
        .pd-thumbs-wrap { display: none; }

        /* Swiper pagination dots */
        .pd-mob-dots {
            display: flex !important;
            justify-content: center;
            gap: 6px;
            padding: 10px 0 6px;
            background: #fff;
        }
        .pd-mob-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #cbd5e1;
            transition: all .2s ease;
            cursor: pointer;
        }
        .pd-mob-dot.is-active {
            width: 22px;
            border-radius: 4px;
            background: var(--pd-blue);
        }

        /* Mobile breadcrumbs */
        .pd-mob-breadcrumb {
            display: flex !important;
            flex-wrap: wrap;
            align-items: center;
            gap: 3px 4px;
            padding: 8px 14px 4px;
            font-size: .74rem;
            color: #64748b;
        }
        .pd-mob-breadcrumb a {
            color: var(--pd-blue);
            text-decoration: none;
            font-weight: 500;
        }
        .pd-mob-breadcrumb .bc-sep {
            color: #94a3b8;
            font-size: .68rem;
        }
        .pd-mob-breadcrumb .bc-current {
            color: var(--pd-blue);
            font-weight: 600;
        }

        /* Date + views row */
        .pd-date-views-row {
            display: flex !important;
            align-items: center;
            justify-content: space-between;
            font-size: .8rem;
            color: #64748b;
            margin-top: 8px;
            padding-top: 8px;
            border-top: 1px solid var(--pd-border);
        }
        .pd-dv-item {
            display: flex;
            align-items: center;
            gap: 5px;
            font-weight: 500;
        }
        .pd-dv-item i {
            color: #94a3b8;
            font-size: .78rem;
        }

        /* "Price on request" style */
        .pd-price-on-request {
            font-weight: 800;
            font-size: 1.2rem;
            color: var(--pd-blue);
        }

        /* Hide desktop views chip on mobile (replaced by date-views row) */
        .pd-views-chip { display: none !important; }

        /* Mobile ad owner box */
        .pd-mob-owner-card {
            display: flex !important;
            align-items: center;
            gap: 12px;
            text-decoration: none;
            color: inherit;
            padding: 14px;
            border: 1px solid var(--pd-border);
            border-radius: 14px;
            background: #fff;
            transition: background .15s;
        }
        .pd-mob-owner-card:active { background: #f8fafc; }
        .pd-mob-owner-avatar {
            width: 52px;
            height: 52px;
            border-radius: 50%;
            overflow: hidden;
            flex-shrink: 0;
            border: 2px solid var(--pd-border);
        }
        .pd-mob-owner-avatar img {
            width: 100%; height: 100%;
            object-fit: cover; display: block;
        }
        .pd-mob-owner-info { flex: 1; min-width: 0; }
        .pd-mob-owner-name {
            font-weight: 700;
            font-size: .95rem;
            color: #0f172a;
            margin: 0 0 3px;
            line-height: 1.2;
        }
        .pd-mob-owner-type {
            font-size: .8rem;
            color: #64748b;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        .pd-mob-owner-arrow {
            color: #94a3b8;
            font-size: .9rem;
            flex-shrink: 0;
        }

        /* Mobile rating section */
        .pd-mob-rating-main {
            display: flex;
            align-items: flex-start;
            gap: 16px;
            margin-bottom: 12px;
        }
        .pd-mob-rating-score { text-align: center; flex-shrink: 0; }
        .pd-mob-rating-num {
            font-size: 2.8rem;
            font-weight: 900;
            color: var(--pd-blue);
            line-height: 1;
        }
        .pd-mob-rating-outof {
            font-size: .75rem;
            color: #64748b;
            font-weight: 600;
            margin-top: 2px;
        }
        .pd-mob-rating-bars {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 5px;
        }
        .pd-mob-rating-bar-row {
            display: flex;
            align-items: center;
            gap: 6px;
        }
        .pd-mob-bar-stars {
            color: #1a1a1a;
            font-size: .72rem;
            width: 64px;
            text-align: right;
            white-space: nowrap;
            flex-shrink: 0;
        }
        .pd-mob-bar-track {
            flex: 1;
            height: 4px;
            background: #e2e8f0;
            border-radius: 2px;
            overflow: hidden;
        }
        .pd-mob-bar-fill {
            height: 100%;
            border-radius: 2px;
            background: #e2e8f0;
        }
        .pd-mob-rating-total {
            font-size: .82rem;
            color: #94a3b8;
            font-weight: 600;
            margin-bottom: 10px;
        }
        .pd-mob-rating-prompt {
            font-size: .88rem;
            color: #475569;
            margin-bottom: 10px;
        }
        .pd-mob-stars-input {
            display: flex;
            gap: 6px;
            margin-bottom: 16px;
        }
        .pd-mob-stars-input .star-btn {
            font-size: 1.6rem;
            color: #d1d5db;
            cursor: pointer;
            transition: color .15s, transform .1s;
            background: none;
            border: none;
            padding: 0;
            line-height: 1;
        }
        .pd-mob-stars-input .star-btn.lit,
        .pd-mob-stars-input .star-btn:hover ~ .star-btn { color: #f59e0b; }
        .pd-mob-stars-input .star-btn:hover { color: #f59e0b; transform: scale(1.2); }

        /* Report abuse button */
        .pd-mob-report-btn {
            width: 100%;
            padding: 13px;
            border: 1.5px solid #ef4444;
            border-radius: 12px;
            background: #fff;
            color: #ef4444;
            font-weight: 700;
            font-size: .9rem;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            cursor: pointer;
            transition: background .15s;
        }
        .pd-mob-report-btn:hover { background: #fef2f2; }

        /* Review textarea + submit */
        .pd-mob-review-textarea {
            width: 100%;
            border: 1.5px solid #e2e8f0;
            border-radius: 10px;
            padding: 10px 12px;
            font-size: .9rem;
            font-family: inherit;
            resize: vertical;
            margin-bottom: 10px;
            outline: none;
            transition: border-color .15s;
            box-sizing: border-box;
        }
        .pd-mob-review-textarea:focus { border-color: var(--pd-blue); }
        .pd-mob-submit-review-btn {
            width: 100%;
            padding: 13px;
            background: var(--pd-blue);
            color: #fff;
            font-weight: 700;
            font-size: .95rem;
            border: none;
            border-radius: 12px;
            cursor: pointer;
            transition: opacity .15s;
            margin-bottom: 10px;
        }
        .pd-mob-submit-review-btn:disabled { opacity: .55; cursor: default; }
        .pd-mob-review-msg {
            font-size: .85rem;
            font-weight: 600;
            padding: 8px 12px;
            border-radius: 8px;
            margin-bottom: 10px;
        }
        .pd-mob-review-msg.ok  { background: #f0fdf4; color: #16a34a; }
        .pd-mob-review-msg.err { background: #fef2f2; color: #dc2626; }

        /* Existing reviews list */
        .pd-mob-reviews-list { margin-bottom: 14px; }
        .pd-mob-review-item {
            border-top: 1px solid #f1f5f9;
            padding: 10px 0 4px;
        }
        .pd-mob-review-item:first-child { border-top: none; }
        .pd-mob-ri-header {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 4px;
        }
        .pd-mob-ri-name { font-weight: 700; font-size: .85rem; color: #1e293b; }
        .pd-mob-ri-stars { color: #f59e0b; font-size: .72rem; }
        .pd-mob-ri-date  { font-size: .75rem; color: #94a3b8; margin-inline-start: auto; }
        .pd-mob-ri-comment { font-size: .85rem; color: #475569; line-height: 1.4; }

        /* Sticky bottom action bar */
        .pd-mob-sticky-bar {
            position: fixed;
            bottom: 0; left: 0; right: 0;
            z-index: 200;
            background: #fff;
            border-top: 1px solid var(--pd-border);
            display: flex;
            height: 62px;
            box-shadow: 0 -4px 16px rgba(15,23,42,.08);
        }
        .pd-mob-sticky-btn {
            flex: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: .9rem;
            font-weight: 700;
            text-decoration: none;
            color: #334155;
            border: 0;
            background: none;
            cursor: pointer;
        }
        .pd-mob-sticky-btn.mob-call {
            color: var(--pd-blue);
            border-left: 1px solid var(--pd-border);
        }
        .pd-mob-sticky-btn i { font-size: 1rem; }

        /* Hide sidebar (seller card) on mobile — shown inline in main col */
        .pd-sidebar { display: none !important; }

        /* Extra page bottom padding for sticky bar */
        .pd-page { padding-bottom: 80px; }

        /* Section heading reset for mobile-only sections */
        .pd-mob-section { margin-top: 0; }

        /* Sim-card star rating row */
        .sim-stars {
            display: flex;
            gap: 2px;
            margin-top: 4px;
        }
        .sim-stars i {
            font-size: .65rem;
            color: #d1d5db;
        }

        /* ===== FLAT PAGE LAYOUT (no card boxes on mobile) ===== */

        /* White page background */
        .pd-page { background: #fff; }

        /* Zero out container/row padding → gallery is truly edge-to-edge */
        .pd-page .container-fluid {
            padding-left: 0 !important;
            padding-right: 0 !important;
            padding-top: 0 !important;
        }
        .pd-page .row.g-3 {
            --bs-gutter-x: 0;
            --bs-gutter-y: 0;
            margin-left: 0 !important;
            margin-right: 0 !important;
        }
        .pd-page .row.g-3 > [class*="col"] {
            padding-left: 0 !important;
            padding-right: 0 !important;
        }

        /* Single-column flow, no gap between sections */
        .pd-layout {
            display: block !important;
            margin-top: 0 !important;
        }
        .pd-main-col {
            display: block !important;
        }

        /* Strip card box-model from every section */
        .pd-main-col .pd-card,
        .pd-shell > .pd-card {
            border: none !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            overflow: visible !important;
        }

        /* Thin divider above each section */
        .pd-main-col .pd-card {
            border-top: 1px solid var(--pd-border) !important;
        }
        /* No divider before the very first content section (description) */
        .pd-mob-breadcrumb + .pd-card,
        .pd-main-col > .pd-card:first-child {
            border-top: none !important;
        }

        /* Similar ads card (direct child of pd-shell, outside pd-layout) */
        .pd-shell > .pd-card {
            border-top: 1px solid var(--pd-border) !important;
            margin-top: 0 !important;
        }

        /* Uniform section content padding */
        .pd-main-col .pd-pad,
        .pd-shell > .pd-card.pd-pad {
            padding: 14px 16px 16px !important;
        }
    }

    /* Desktop: hide mobile-only elements */
    @media (min-width: 768px) {
        .pd-mob-only { display: none !important; }
        .pd-mob-sticky-bar { display: none !important; }
        .pd-mob-breadcrumb { display: none !important; }
        .pd-mob-dots { display: none !important; }
        .pd-date-views-row { display: none !important; }
    }
