/* =========================================================
   DARPICKS PRODUCT EXPERIENCE — FINAL V3
   Vibrant pink / berry / blush palette
   Solid colors only. No gradients.
========================================================= */

.dpx-slider,
.dpx-grid-wrap,
.dpx-archive,
.dpx-slider *,
.dpx-grid-wrap *,
.dpx-archive *{
    box-sizing:border-box;
}

.dpx-slider,
.dpx-grid-wrap,
.dpx-archive{
    --dpx-green:#0A4A43;
    --dpx-green-dark:#063832;
    --dpx-gold-dark:#A87931;
    --dpx-green-deep:#063832;
    --dpx-green-mid:#0F5D54;
    --dpx-gold:#C89A45;
    --dpx-gold-light:#D4B06A;
    --dpx-cream:#FBF8F2;
    --dpx-cream-deep:#F5F0E7;
    --dpx-gold-soft:#F0E0C2;
    --dpx-white:#FFFFFF;
    --dpx-border:#DED4C5;
    --dpx-border-strong:#CDBB9B;
    --dpx-text:#193D37;
    --dpx-muted:#687773;
    --dpx-title-size:12px;
    --dpx-radius:11px;
    --dpx-image-padding:8px;
    --dpx-image-ratio:1 / 1;

    color:var(--dpx-text)!important;
    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

/* =========================================================
   PERMANENT REMOVALS / SAFETY
   These items are intentionally not part of the final UI.
========================================================= */

.dpx-rating,
.dpx-rating--card,
.dpx-rating--single,
[data-dpx-rating-ui="1"],
.dpx-card-action,
.dpx-view-product,
a.dpx-view-product,
.dpx-archive-notes,
.dpx-archive-count,
.dpx-archive-eyebrow,
.dpx-archive-description,
.dpx-category-card-copy small,
body.woocommerce .star-rating,
body.woocommerce-page .star-rating,
body.single-product .woocommerce-product-rating{
    display:none!important;
    visibility:hidden!important;
}

/* =========================================================
   PRODUCT CARDS
========================================================= */

.dpx-card{
    position:relative;
    min-width:0;
    height:100%;
    margin:0;
    padding:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:var(--dpx-radius)!important;
    box-shadow:0 3px 14px rgba(6,56,50,.03)!important;
    isolation:isolate;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}

.dpx-card:hover{
    background:#FFFFFF!important;
    border-color:var(--dpx-green)!important;
    box-shadow:0 8px 22px rgba(10,74,67,.075)!important;
    transform:translateY(-2px);
}

.dpx-card-media{
    position:relative;
    width:100%;
    aspect-ratio:var(--dpx-image-ratio);
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#FFFFFF!important;
    border-bottom:1px solid var(--dpx-border)!important;
}

.dpx-card-image-link{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    padding:0;
    background:#FFFFFF!important;
    text-decoration:none!important;
}

.dpx-card-image,
.dpx-card-media img,
.dpx-card-image-link img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:var(--dpx-image-padding)!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#FFFFFF!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    filter:none!important;
    transition:transform .2s ease!important;
}

.dpx-card:hover .dpx-card-image,
.dpx-card:hover .dpx-card-media img{
    background:#FFFFFF!important;
    transform:scale(1.025);
}

.dpx-sale-badge{
    position:absolute;
    top:7px;
    left:7px;
    z-index:12;
    min-width:37px;
    min-height:21px;
    padding:5px 7px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#FFFFFF!important;
    background:var(--dpx-green)!important;
    border:1px solid var(--dpx-green)!important;
    border-radius:6px;
    box-shadow:0 4px 12px rgba(10,74,67,.14)!important;
    font:700 8.5px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    letter-spacing:.02em;
}

.dpx-card-body{
    flex:1 1 auto;
    min-height:0;
    padding:9px 9px 10px;
    display:flex;
    flex-direction:column;
    background:#FFFFFF!important;
}

body .dpx-card-title,
.dpx-card-title{
    min-height:calc(var(--dpx-title-size) * 2.7);
    margin:0 0 5px!important;
    padding:0!important;
    color:var(--dpx-text)!important;
    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    font-size:var(--dpx-title-size)!important;
    font-weight:600!important;
    line-height:1.35!important;
    letter-spacing:0!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
}

body .dpx-card-title a,
.dpx-card-title a{
    color:inherit!important;
    font:inherit!important;
    text-decoration:none!important;
}

.dpx-card-title a:hover,
.dpx-card:hover .dpx-card-title a{
    color:var(--dpx-green)!important;
}

/* =========================================================
   PRICE
========================================================= */

.dpx-price-row{
    min-height:23px;
    margin:0;
    display:flex;
    align-items:flex-end;
}

.dpx-price{
    min-width:0;
    color:var(--dpx-green-deep)!important;
    font:700 11.5px/1.18 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

.dpx-price .woocommerce-Price-amount,
.dpx-price .amount,
.dpx-price ins,
.dpx-price ins .woocommerce-Price-amount,
.dpx-price .dpx-current-only{
    color:var(--dpx-green-deep)!important;
    font:inherit!important;
    text-decoration:none!important;
}

.dpx-price del{
    display:block;
    margin:0 0 2px;
    color:#8B9793!important;
    opacity:1!important;
    font:500 8.5px/1.05 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

.dpx-price del .woocommerce-Price-amount,
.dpx-price del .amount{
    color:inherit!important;
    font:inherit!important;
}

.dpx-price ins{
    display:block;
    background:transparent!important;
}

.dpx-price-missing{
    color:var(--dpx-muted)!important;
    font:600 9.5px/1.2 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

/* =========================================================
   NATIVE WISHLIST
   ---------------------------------------------------------
   Wishlist system/design adapted from the uploaded native
   implementation while preserving DarPicks colors,
   typography, card design and 6-desktop / 2-mobile requirement.
========================================================= */

.dpx-wishlist{
    position:absolute!important;
    top:6px!important;
    right:6px!important;
    z-index:20!important;
    width:30px!important;
    height:30px!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    border:0!important;
    border-radius:50%!important;
    overflow:hidden!important;
}

.dpx-wishlist-ui{
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    width:30px!important;
    height:30px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:var(--dpx-green)!important;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:50%!important;
    box-shadow:0 3px 10px rgba(6,56,50,.06)!important;
    cursor:pointer!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    transition:
        color .15s ease,
        border-color .15s ease,
        background-color .15s ease,
        opacity .15s ease!important;
}

.dpx-wishlist-heart{
    width:13px!important;
    height:13px!important;
    display:block!important;
    fill:transparent!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
}

.dpx-wishlist-ui:hover{
    color:#FFFFFF!important;
    border-color:var(--dpx-green)!important;
    background:var(--dpx-green)!important;
}

.dpx-wishlist.is-added .dpx-wishlist-ui{
    color:#FFFFFF!important;
    border-color:var(--dpx-gold-dark)!important;
    background:var(--dpx-gold-dark)!important;
}

.dpx-wishlist.is-added .dpx-wishlist-heart{
    fill:currentColor!important;
}

.dpx-wishlist.is-busy .dpx-wishlist-ui,
.dpx-wishlist.is-syncing .dpx-wishlist-ui{
    opacity:.72!important;
}

.dpx-wishlist.is-busy .dpx-wishlist-ui{
    cursor:wait!important;
}

.dpx-wishlist-ui:focus-visible{
    outline:2px solid var(--dpx-gold)!important;
    outline-offset:2px!important;
}


/* =========================================================
   WISHLIST TOAST
========================================================= */

.dpx-wishlist-toast{
    --dpx-toast-green:#0A4A43;
    --dpx-toast-deep:#063832;

    position:fixed;
    z-index:999999;
    left:50%;
    bottom:22px;

    max-width:calc(100vw - 24px);
    min-height:38px;

    padding:7px 9px 7px 8px;

    display:flex;
    align-items:center;
    gap:7px;

    color:#FFFFFF;
    background:var(--dpx-toast-deep);

    border:1px solid rgba(255,255,255,.18);
    border-radius:8px;

    box-shadow:0 10px 28px rgba(6,56,50,.20);

    font:600 10px/1.2 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transform:translate(-50%,8px);

    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease;
}

.dpx-wishlist-toast.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%,0);
}

.dpx-wishlist-toast.is-error{
    background:#775044;
}

.dpx-wishlist-toast__icon{
    width:23px;
    height:23px;
    flex:0 0 23px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#FFFFFF;
    background:var(--dpx-toast-green);

    border-radius:50%;

    font-size:10px;
    line-height:1;
}

.dpx-wishlist-toast__text{
    white-space:nowrap;
}

.dpx-wishlist-toast__link{
    margin-left:4px;
    padding-left:8px;

    border-left:1px solid rgba(255,255,255,.22);

    color:#FFFFFF!important;

    font:700 9px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;

    text-decoration:underline!important;
    text-underline-offset:2px;
}

.dpx-wishlist-toast__link:hover{
    color:#FFFFFF!important;
}

.dpx-wishlist-toast__link[hidden]{
    display:none!important;
}


/* =========================================================
   FULL NATIVE WISHLIST PAGE
   Replaces the default ReHub wishlist template.
========================================================= */

.dpx-wishlist-template{
    width:100%;
    margin:0!important;
    padding:18px 0 40px!important;
    background:#FFFFFF!important;
}

.dpx-wishlist-template__inner{
    width:min(1320px,94vw);
    margin:0 auto!important;
    padding:0!important;
}

.dpx-wishlist-page{
    --dpx-green:#0A4A43;
    --dpx-green-dark:#063832;
    --dpx-gold-dark:#A87931;
    --dpx-green-deep:#063832;
    --dpx-green-mid:#0F5D54;
    --dpx-gold:#C89A45;
    --dpx-cream:#FBF8F2;
    --dpx-cream-deep:#F5F0E7;
    --dpx-gold-soft:#F0E0C2;
    --dpx-white:#FFFFFF;
    --dpx-border:#DED4C5;
    --dpx-border-strong:#CDBB9B;
    --dpx-text:#193D37;
    --dpx-muted:#687773;

    width:100%;
    margin:0;
    padding:0;

    color:var(--dpx-text);

    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;
}

.dpx-wishlist-page,
.dpx-wishlist-page *{
    box-sizing:border-box;
}

.dpx-wishlist-page-head{
    position:relative;

    margin:0 0 12px;
    padding:20px 22px;

    overflow:hidden;

    background:var(--dpx-cream);

    border:1px solid var(--dpx-border);
    border-radius:14px;

    text-align:center;
}

.dpx-wishlist-page-head:after{
    content:"";

    position:absolute;

    width:90px;
    height:90px;

    top:-42px;
    right:-34px;

    background:var(--dpx-gold-soft);

    border-radius:50%;

    pointer-events:none;
}

.dpx-wishlist-page-head>span{
    position:relative;
    z-index:1;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    margin-bottom:6px;

    color:var(--dpx-green);

    font-size:8px;
    line-height:1;
    font-weight:700;

    letter-spacing:.14em;
    text-transform:none;
}

.dpx-wishlist-page-head>span:before{
    content:"";

    width:5px;
    height:5px;

    background:var(--dpx-gold);

    border-radius:50%;
}

.dpx-wishlist-page-head h2{
    position:relative;
    z-index:1;

    margin:0!important;

    color:var(--dpx-green-deep)!important;

    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;

    font-size:clamp(30px,3vw,42px)!important;
    line-height:1!important;
    font-weight:600!important;
}

.dpx-wishlist-page-head p{
    position:relative;
    z-index:1;

    max-width:650px;

    margin:7px auto 0!important;

    color:var(--dpx-muted)!important;

    font-size:11px!important;
    line-height:1.5!important;
    font-weight:400!important;
}


/* Preserve DarPicks product-grid requirement. */
.dpx-wishlist-page-grid{
    display:grid!important;

    grid-template-columns:
        repeat(var(--dpx-wishlist-columns,6),minmax(0,1fr))!important;

    gap:10px!important;

    align-items:stretch!important;
}


/* EMPTY STATE */

.dpx-wishlist-empty{
    padding:28px 18px;

    background:var(--dpx-cream);

    border:1px solid var(--dpx-border);
    border-radius:14px;

    text-align:center;
}

.dpx-wishlist-empty strong{
    display:block;

    color:var(--dpx-green-deep)!important;

    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;

    font-size:26px;
    line-height:1.05;
    font-weight:600;
}

.dpx-wishlist-empty p{
    margin:7px 0 13px!important;

    color:var(--dpx-muted)!important;

    font-size:11.5px!important;
    line-height:1.5!important;
}

.dpx-wishlist-empty a{
    min-height:36px;

    padding:0 14px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    background:var(--dpx-green);

    border:1px solid var(--dpx-green);
    border-radius:999px;

    color:#FFFFFF!important;

    font-size:9px;
    line-height:1;
    font-weight:700;

    text-decoration:none!important;

    box-shadow:0 6px 16px rgba(10,74,67,.13);
}

.dpx-wishlist-empty a:hover{
    background:var(--dpx-green-dark);
    border-color:var(--dpx-green-dark);
    color:#FFFFFF!important;
}


/* WISHLIST PAGE RESPONSIVE GRID */

@media(max-width:1100px){
    .dpx-wishlist-page-grid{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }
}

@media(max-width:900px){
    .dpx-wishlist-page-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}

@media(max-width:767px){
    .dpx-wishlist-template{
        padding:10px 0 26px!important;
    }

    .dpx-wishlist-template__inner{
        width:94vw;
    }

    .dpx-wishlist-page-head{
        margin-bottom:9px;
        padding:16px 13px;
        border-radius:13px;
    }

    .dpx-wishlist-page-head h2{
        font-size:30px!important;
    }

    .dpx-wishlist-page-head p{
        font-size:10.5px!important;
        line-height:1.5!important;
    }

    .dpx-wishlist-page-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
    }

    .dpx-wishlist-empty{
        padding:22px 13px;
    }

    .dpx-wishlist-toast{
        bottom:13px;
        min-height:36px;
        padding:6px 8px;
        font-size:9px;
    }

    .dpx-wishlist-toast__text{
        white-space:normal;
    }

    .dpx-wishlist-toast__link{
        font-size:8px!important;
    }
}

@media(prefers-reduced-motion:reduce){
    .dpx-wishlist-toast,
    .dpx-wishlist-ui{
        transition:none!important;
    }
}


/* =========================================================
   HOMEPAGE SLIDER
========================================================= */

.dpx-slider{
    position:relative;
    width:100%;
    margin:0;
    padding:0 3px;
    --dpx-slider-arrow-top:50%;
}

.dpx-slider-track{
    width:100%;
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - (var(--dpx-slider-desktop,6) - 1) * 10px) / var(--dpx-slider-desktop,6));
    gap:10px;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
}

.dpx-slider-track::-webkit-scrollbar{
    display:none;
}

.dpx-slider-track > .dpx-card{
    scroll-snap-align:start;
}

.dpx-slider-arrow{
    position:absolute!important;
    top:var(--dpx-slider-arrow-top)!important;
    z-index:30!important;
    width:31px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:var(--dpx-green)!important;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border-strong)!important;
    border-radius:8px!important;
    box-shadow:0 4px 14px rgba(6,56,50,.07)!important;
    transform:translateY(-50%)!important;
    cursor:pointer!important;
}

.dpx-slider-prev{left:5px!important}
.dpx-slider-next{right:5px!important}

.dpx-slider-arrow svg{
    width:15px!important;
    height:15px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
}

.dpx-slider-arrow:hover:not(:disabled){
    color:#FFFFFF!important;
    background:var(--dpx-green)!important;
    border-color:var(--dpx-green)!important;
}

.dpx-slider-arrow:disabled{
    opacity:.28!important;
    cursor:default!important;
}

/* =========================================================
   HOMEPAGE GRID / COMMON GRID
========================================================= */

.dpx-grid-wrap{
    width:100%;
    margin:0;
}

.dpx-grid{
    width:100%;
    display:grid;
    grid-template-columns:repeat(var(--dpx-grid-desktop,6),minmax(0,1fr));
    gap:10px;
}

.dpx-load-more-wrap{
    margin-top:14px;
    display:flex;
    justify-content:center;
}

.dpx-load-more{
    min-width:142px;
    min-height:38px;
    margin:0!important;
    padding:9px 17px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#FFFFFF!important;
    background:var(--dpx-green)!important;
    border:1px solid var(--dpx-green)!important;
    border-radius:999px!important;
    box-shadow:0 7px 18px rgba(10,74,67,.14)!important;
    font:700 9px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    letter-spacing:.04em!important;
    text-transform:none!important;
    cursor:pointer!important;
}

.dpx-load-more:hover,
.dpx-load-more:focus{
    color:#FFFFFF!important;
    background:var(--dpx-green-dark)!important;
    border-color:var(--dpx-green-dark)!important;
}

.dpx-load-more:disabled{
    opacity:.65!important;
    cursor:wait!important;
}

.dpx-empty{
    padding:18px;
    color:var(--dpx-muted)!important;
    background:var(--dpx-cream)!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:12px!important;
    font:500 12px/1.55 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

/* =========================================================
   CATEGORY ARCHIVE — CLEAN / SIMPLIFIED
========================================================= */

.dpx-archive{
    width:100%;
    max-width:none!important;
    margin:0!important;
    padding:13px 0 30px!important;
    background:#FFFFFF!important;
    color:var(--dpx-text)!important;
}

.dpx-archive-inner{
    width:min(1600px,94vw);
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
}

.dpx-breadcrumbs{
    min-width:0;
    margin:0 0 8px!important;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:5px;
    color:var(--dpx-muted)!important;
    font:600 8.5px/1.35 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

.dpx-breadcrumbs a{
    color:var(--dpx-gold-dark)!important;
    text-decoration:none!important;
}

.dpx-breadcrumbs a:hover{
    color:var(--dpx-green)!important;
}

.dpx-breadcrumbs__current{
    color:var(--dpx-text)!important;
}

.dpx-archive-hero{
    position:relative;
    overflow:hidden;
    padding:22px 26px;
    background:var(--dpx-cream)!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:16px!important;
    box-shadow:0 7px 24px rgba(10,74,67,.045)!important;
}

.dpx-archive-hero:after{
    content:"";
    position:absolute;
    right:-44px;
    top:-48px;
    width:108px;
    height:108px;
    border-radius:50%;
    background:var(--dpx-gold-soft)!important;
    pointer-events:none;
}

.dpx-archive-hero h1{
    position:relative;
    z-index:1;
    margin:0!important;
    padding:0!important;
    color:var(--dpx-green-deep)!important;
    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    font-size:clamp(34px,4vw,48px)!important;
    line-height:1!important;
    font-weight:600!important;
    letter-spacing:.005em!important;
}

/* =========================================================
   CHILD CATEGORIES
========================================================= */

.dpx-category-section,
.dpx-products-section{
    margin-top:10px;
    padding:15px;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:14px!important;
}

.dpx-section-heading{
    min-width:0;
    margin:0 0 10px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.dpx-section-heading h2{
    margin:0!important;
    padding:0!important;
    color:var(--dpx-green-deep)!important;
    font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    font-size:27px!important;
    line-height:1.05!important;
    font-weight:600!important;
}

.dpx-category-nav{
    display:flex;
    align-items:center;
    gap:5px;
}

.dpx-category-nav button{
    width:31px!important;
    height:31px!important;
    min-width:31px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:var(--dpx-green)!important;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border-strong)!important;
    border-radius:7px!important;
    cursor:pointer!important;
}

.dpx-category-nav button:hover:not(:disabled){
    color:#FFFFFF!important;
    background:var(--dpx-green)!important;
    border-color:var(--dpx-green)!important;
}

.dpx-category-nav button:disabled{
    opacity:.3!important;
    cursor:default!important;
}

.dpx-category-nav svg{
    width:13px;
    height:13px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dpx-category-grid{
    width:100%;
    display:flex;
    gap:8px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:1px 1px 3px;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
}

.dpx-category-grid::-webkit-scrollbar{
    display:none;
}

.dpx-category-card{
    width:calc((100% - 24px)/4);
    min-width:calc((100% - 24px)/4);
    max-width:calc((100% - 24px)/4);
    flex:0 0 calc((100% - 24px)/4);
    min-height:73px;
    padding:7px;
    display:grid;
    grid-template-columns:57px minmax(0,1fr) 24px;
    align-items:center;
    gap:8px;
    color:var(--dpx-text)!important;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:10px!important;
    box-shadow:0 3px 12px rgba(6,56,50,.025)!important;
    text-decoration:none!important;
    scroll-snap-align:start;
    transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}

.dpx-category-card:hover{
    color:var(--dpx-text)!important;
    background:#FCFAF6!important;
    border-color:var(--dpx-green)!important;
    box-shadow:0 6px 18px rgba(10,74,67,.06)!important;
    transform:translateY(-1px);
}

.dpx-category-card-media{
    width:57px;
    height:57px;
    min-width:57px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:8px!important;
}

.dpx-category-image,
.dpx-category-card-media img{
    width:100%!important;
    height:100%!important;
    display:block!important;
    padding:4px!important;
    object-fit:contain!important;
    background:#FFFFFF!important;
    filter:none!important;
}

.dpx-category-fallback{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--dpx-cream-deep)!important;
    color:var(--dpx-green)!important;
}

.dpx-category-fallback svg{
    width:29px;
    height:29px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dpx-category-card-copy{
    min-width:0;
    display:block;
}

.dpx-category-card-copy strong{
    display:block;
    overflow:hidden;
    color:var(--dpx-green-deep)!important;
    font:600 16px/1.05 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.dpx-category-card-arrow{
    width:24px;
    height:24px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--dpx-cream-deep)!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:50%;
    color:var(--dpx-green)!important;
    font:700 10px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    transition:background-color .16s ease,color .16s ease,transform .16s ease!important;
}

.dpx-category-card:hover .dpx-category-card-arrow{
    background:var(--dpx-green)!important;
    border-color:var(--dpx-green)!important;
    color:#FFFFFF!important;
    transform:translateX(2px);
}

/* =========================================================
   ARCHIVE SEARCH / SORT
========================================================= */

.dpx-products-section{
    padding-top:13px;
}

.dpx-archive-tools{
    width:100%;
    margin:0 0 11px!important;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    flex-wrap:wrap;
}

.dpx-search-field{
    width:min(260px,40vw);
    min-height:37px;
    padding:0 10px;
    display:flex;
    align-items:center;
    gap:7px;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:8px!important;
}

.dpx-search-field:hover,
.dpx-search-field:focus-within{
    border-color:var(--dpx-green)!important;
}

.dpx-search-field svg{
    width:14px;
    height:14px;
    flex:0 0 14px;
    fill:none;
    stroke:var(--dpx-gold-dark)!important;
    stroke-width:1.7;
    stroke-linecap:round;
}

.dpx-search-field input{
    width:100%;
    height:35px;
    margin:0!important;
    padding:0!important;
    color:var(--dpx-text)!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    outline:0!important;
    font:500 10px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

.dpx-search-field input::placeholder{
    color:#82908C!important;
}

.dpx-sort-field{
    min-height:37px;
    padding:0 8px;
    display:flex;
    align-items:center;
    gap:6px;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:8px!important;
}

.dpx-sort-field:hover,
.dpx-sort-field:focus-within{
    border-color:var(--dpx-green)!important;
}

.dpx-sort-field > span{
    color:var(--dpx-gold-dark)!important;
    font:700 7.5px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    text-transform:none;
}

.dpx-sort-field select{
    height:33px!important;
    margin:0!important;
    padding:0 22px 0 2px!important;
    color:var(--dpx-text)!important;
    background:#FFFFFF!important;
    border:0!important;
    box-shadow:none!important;
    outline:0!important;
    font:600 9.5px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

.dpx-filter-apply,
.dpx-filter-clear{
    min-height:37px;
    padding:8px 12px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:8px!important;
    font:700 8.5px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    letter-spacing:.02em!important;
    text-decoration:none!important;
    cursor:pointer!important;
}

.dpx-filter-apply{
    color:#FFFFFF!important;
    background:var(--dpx-green)!important;
    border:1px solid var(--dpx-green)!important;
    box-shadow:0 5px 14px rgba(10,74,67,.12)!important;
}

.dpx-filter-apply:hover,
.dpx-filter-apply:focus{
    color:#FFFFFF!important;
    background:var(--dpx-green-dark)!important;
    border-color:var(--dpx-green-dark)!important;
}

.dpx-filter-clear{
    color:var(--dpx-gold-dark)!important;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border-strong)!important;
}

.dpx-filter-clear:hover,
.dpx-filter-clear:focus{
    color:var(--dpx-green)!important;
    background:var(--dpx-cream-deep)!important;
    border-color:var(--dpx-green)!important;
}

.dpx-archive-grid{
    grid-template-columns:repeat(var(--dpx-archive-desktop,6),minmax(0,1fr));
}



/* =========================================================
   PAGINATION / EMPTY STATE
========================================================= */

.dpx-pagination{
    margin-top:16px;
}

.dpx-pagination ul{
    display:flex;
    gap:5px;
    justify-content:center;
    list-style:none;
    margin:0;
    padding:0;
}

.dpx-pagination a,
.dpx-pagination span{
    min-width:33px;
    height:33px;
    padding:0 8px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#FFFFFF!important;
    border:1px solid var(--dpx-border)!important;
    border-radius:7px!important;
    color:var(--dpx-gold-dark)!important;
    font:700 9px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
    text-decoration:none!important;
}

.dpx-pagination .current,
.dpx-pagination a:hover{
    background:var(--dpx-green)!important;
    border-color:var(--dpx-green)!important;
    color:#FFFFFF!important;
}

.dpx-archive-empty h2{
    margin:0 0 4px!important;
    color:var(--dpx-green-deep)!important;
    font:600 25px/1 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

.dpx-archive-empty p{
    margin:0!important;
    color:var(--dpx-muted)!important;
    font:400 12px/1.5 "Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}

/* =========================================================
   ACCESSIBILITY
========================================================= */

.dpx-slider a:focus-visible,
.dpx-slider button:focus-visible,
.dpx-grid-wrap a:focus-visible,
.dpx-grid-wrap button:focus-visible,
.dpx-archive a:focus-visible,
.dpx-archive button:focus-visible,
.dpx-archive input:focus-visible,
.dpx-archive select:focus-visible{
    outline:2px solid var(--dpx-gold)!important;
    outline-offset:3px!important;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(min-width:1450px){
    .dpx-category-card{
        width:calc((100% - 32px)/5);
        min-width:calc((100% - 32px)/5);
        max-width:calc((100% - 32px)/5);
        flex-basis:calc((100% - 32px)/5);
    }
}

@media(min-width:768px) and (max-width:1100px){
    .dpx-slider-track{
        grid-auto-columns:calc((100% - 20px)/3);
        gap:10px;
    }

    .dpx-grid,
    .dpx-archive-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:10px;
    }

    .dpx-category-card{
        width:calc((100% - 16px)/3);
        min-width:calc((100% - 16px)/3);
        max-width:calc((100% - 16px)/3);
        flex-basis:calc((100% - 16px)/3);
    }

    .dpx-archive-tools{
        justify-content:flex-start;
    }

    .dpx-search-field{
        width:min(320px,55vw);
    }
}

@media(max-width:767px){
    .dpx-slider{
        padding:0!important;
    }

    .dpx-slider-track{
        grid-auto-columns:calc((100% - (var(--dpx-slider-mobile,2) - 1) * 8px) / var(--dpx-slider-mobile,2));
        gap:8px;
        padding-left:0!important;
        padding-right:0!important;
    }

    .dpx-slider-arrow{
        width:30px!important;
        height:39px!important;
        border-radius:7px!important;
    }

    .dpx-slider-prev{left:4px!important}
    .dpx-slider-next{right:4px!important}

    .dpx-grid{
        grid-template-columns:repeat(var(--dpx-grid-mobile,2),minmax(0,1fr));
        gap:8px;
    }

    .dpx-card-body{
        padding:7px 7px 8px;
    }

    body .dpx-card-title,
    .dpx-card-title{
        min-height:28px;
        margin-bottom:4px!important;
        font-size:10.5px!important;
    }

    .dpx-card-image,
    .dpx-card-media img{
        padding:min(var(--dpx-image-padding),5px)!important;
    }

    .dpx-price-row{
        min-height:21px;
    }

    .dpx-price{
        font-size:10.5px!important;
    }

    .dpx-price del{
        font-size:7.5px!important;
    }

    .dpx-sale-badge{
        top:5px;
        left:5px;
        min-width:33px;
        min-height:18px;
        padding:4px 5px;
        font-size:7px!important;
    }

    .dpx-wishlist{
        top:5px!important;
        right:5px!important;
        width:27px!important;
        height:27px!important;
    }

    .dpx-wishlist-ui{
        width:27px!important;
        height:27px!important;
    }

    .dpx-wishlist-heart{
        width:12px!important;
        height:12px!important;
    }

    .dpx-archive{
        padding:9px 0 22px!important;
    }

    .dpx-archive-inner{
        width:94vw;
    }

    .dpx-breadcrumbs{
        margin-bottom:6px!important;
        font-size:8px!important;
    }

    .dpx-archive-hero{
        padding:18px 15px;
        border-radius:14px!important;
    }

    .dpx-archive-hero:after{
        width:84px;
        height:84px;
        right:-38px;
        top:-39px;
    }

    .dpx-archive-hero h1{
        font-size:36px!important;
    }

    .dpx-category-section,
    .dpx-products-section{
        margin-top:8px;
        padding:12px;
        border-radius:12px!important;
    }

    .dpx-section-heading{
        margin-bottom:8px;
    }

    .dpx-section-heading h2{
        font-size:25px!important;
    }

    .dpx-category-nav button{
        width:29px!important;
        height:29px!important;
        min-width:29px!important;
        border-radius:6px!important;
    }

    .dpx-category-grid{
        gap:7px;
        padding:1px 8px 3px 0;
    }

    .dpx-category-card{
        width:80%;
        min-width:80%;
        max-width:80%;
        flex:0 0 80%;
        min-height:69px;
        grid-template-columns:51px minmax(0,1fr) 22px;
        padding:6px;
        gap:7px;
    }

    .dpx-category-card-media{
        width:51px;
        height:51px;
        min-width:51px;
    }

    .dpx-category-card-copy strong{
        font-size:15px!important;
    }

    .dpx-category-card-arrow{
        width:22px;
        height:22px;
    }

    .dpx-category-card:hover{
        transform:none;
    }

    .dpx-archive-tools{
        width:100%;
        margin-bottom:9px!important;
        gap:5px;
        justify-content:flex-start;
    }

    .dpx-search-field{
        width:100%;
    }

    .dpx-sort-field{
        flex:1 1 auto;
    }

    .dpx-sort-field select{
        width:100%;
    }

    .dpx-filter-apply,
    .dpx-filter-clear{
        min-height:35px;
    }

    .dpx-archive-grid{
        grid-template-columns:repeat(var(--dpx-archive-mobile,2),minmax(0,1fr));
        gap:8px;
    }

    .dpx-load-more{
        width:100%;
        min-height:36px;
    }
}

@media(max-width:420px){
    .dpx-category-card{
        width:86%;
        min-width:86%;
        max-width:86%;
        flex-basis:86%;
    }
}

@media(max-width:380px){
    .dpx-slider-track{gap:7px}
    .dpx-slider-arrow{width:28px!important;height:37px!important}
    .dpx-grid{gap:7px}
    body .dpx-card-title,
    .dpx-card-title{font-size:10px!important}
}

@media(prefers-reduced-motion:reduce){
    .dpx-card,
    .dpx-card-image,
    .dpx-slider-arrow,
    .dpx-category-card,
    .dpx-category-card-arrow,
    .dpx-load-more{
        transition:none!important;
    }

    .dpx-card:hover,
    .dpx-card:hover .dpx-card-image,
    .dpx-category-card:hover{
        transform:none!important;
    }
}



/* DARPICKS FINAL RTL / BRAND LAYER */
.dpx-slider,.dpx-grid-wrap,.dpx-archive,.dpx-wishlist-page{
  direction:rtl!important;
  font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;
}
.dpx-slider,.dpx-grid-wrap,.dpx-archive{
  --dpx-green:#0A4A43;--dpx-green-dark:#063832;--dpx-green-deep:#052F2B;
  --dpx-green-mid:#0F5D54;--dpx-gold:#C89A45;--dpx-gold-dark:#A87931;
  --dpx-gold-light:#D9BA78;--dpx-gold-soft:#F0E0C2;--dpx-cream:#FBF8F2;
  --dpx-cream-deep:#F5F0E7;--dpx-border:#DED4C5;--dpx-border-strong:#CDBB9B;
  --dpx-text:#193D37;--dpx-muted:#687773;
}
.dpx-card{direction:rtl!important;border-color:#E2DBCE!important;box-shadow:0 4px 16px rgba(6,56,50,.035)!important}
.dpx-card:hover{border-color:rgba(200,154,69,.72)!important;box-shadow:0 9px 23px rgba(6,56,50,.075)!important}
.dpx-card-title,.dpx-card-title a{text-align:right!important;unicode-bidi:plaintext!important}
.dpx-card-title a:hover,.dpx-card:hover .dpx-card-title a{color:#0A4A43!important}
.dpx-price-row{justify-content:flex-start!important}.dpx-price{text-align:right!important}
.dpx-slider-track,.dpx-category-grid{direction:ltr!important}
.dpx-slider-track>.dpx-card,.dpx-category-grid>.dpx-category-card{direction:rtl!important}
.dpx-sale-badge{background:#0A4A43!important;border-color:#0A4A43!important;box-shadow:0 4px 12px rgba(10,74,67,.13)!important}
.dpx-wishlist-ui{color:#0A4A43!important;border-color:#DED4C5!important}
.dpx-wishlist-ui:hover,.dpx-wishlist.is-added .dpx-wishlist-ui{color:#fff!important;background:#0A4A43!important;border-color:#0A4A43!important}
.dpx-load-more{background:#0A4A43!important;border-color:#0A4A43!important;border-radius:6px!important;box-shadow:0 6px 16px rgba(10,74,67,.12)!important;font-weight:600!important;letter-spacing:0!important}
.dpx-load-more:hover,.dpx-load-more:focus{background:#063832!important;border-color:#063832!important}
.dpx-slider-arrow{color:#0A4A43!important;border-color:#D6C9B2!important}
.dpx-slider-arrow:hover:not(:disabled){color:#fff!important;background:#0A4A43!important;border-color:#0A4A43!important}
.dpx-archive{padding:10px 0 28px!important}
.dpx-breadcrumbs{direction:rtl!important;justify-content:flex-start!important;font-weight:500!important;font-size:9px!important}
.dpx-breadcrumbs a{color:#A87931!important}.dpx-breadcrumbs a:hover{color:#0A4A43!important}
.dpx-archive-hero{padding:19px 23px!important;background:linear-gradient(120deg,#FCFAF6,#F5F0E7)!important;border:1px solid #DED4C5!important;border-radius:15px!important;box-shadow:0 7px 22px rgba(6,56,50,.045)!important;text-align:right!important}
.dpx-archive-hero:after{background:transparent!important;border:1px solid rgba(200,154,69,.18)!important}
.dpx-archive-hero__eyebrow{position:relative;z-index:2;display:block;margin-bottom:5px;color:#A87931;font-size:9px;line-height:1;font-weight:600}
.dpx-archive-hero h1{color:#063832!important;font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;font-size:clamp(30px,3.4vw,43px)!important;line-height:1.3!important;font-weight:600!important}
.dpx-archive-hero__line{position:relative;z-index:2;width:42px;height:2px;display:block;margin-top:8px;background:#C89A45;border-radius:20px}
.dpx-category-section,.dpx-products-section{margin-top:9px!important;padding:13px!important;border:1px solid #DED4C5!important;border-radius:13px!important;box-shadow:0 3px 14px rgba(6,56,50,.025)!important}
.dpx-section-heading h2{color:#063832!important;font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;font-size:20px!important;line-height:1.35!important;font-weight:600!important}
.dpx-category-card{border-color:#E1D8C8!important}.dpx-category-card:hover{background:#FCFAF6!important;border-color:#C89A45!important;box-shadow:0 6px 18px rgba(6,56,50,.05)!important}
.dpx-category-card-copy strong{color:#063832!important;font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;font-size:13px!important;line-height:1.35!important;font-weight:600!important}
.dpx-category-card-arrow{color:#A87931!important;background:#FBF8F2!important;border-color:#DED4C5!important}
.dpx-category-card:hover .dpx-category-card-arrow{color:#fff!important;background:#0A4A43!important;border-color:#0A4A43!important;transform:translateX(-2px)!important}
.dpx-category-nav button{color:#0A4A43!important;border-color:#D2C4AB!important}.dpx-category-nav button:hover:not(:disabled){color:#fff!important;background:#0A4A43!important;border-color:#0A4A43!important}
.dpx-archive-tools{direction:rtl!important;justify-content:flex-start!important}
.dpx-search-field,.dpx-sort-field{border-color:#DED4C5!important}.dpx-search-field:hover,.dpx-search-field:focus-within,.dpx-sort-field:hover,.dpx-sort-field:focus-within{border-color:#C89A45!important}
.dpx-filter-apply{color:#fff!important;background:#0A4A43!important;border-color:#0A4A43!important;box-shadow:none!important}.dpx-filter-apply:hover,.dpx-filter-apply:focus{background:#063832!important;border-color:#063832!important}
.dpx-filter-clear{color:#A87931!important;border-color:#D1C2A8!important}.dpx-filter-clear:hover,.dpx-filter-clear:focus{color:#0A4A43!important;background:#FBF8F2!important;border-color:#C89A45!important}
.dpx-wishlist-page-head{background:linear-gradient(120deg,#FCFAF6,#F5F0E7)!important;border-color:#DED4C5!important}
.dpx-wishlist-page-head h2{color:#063832!important;font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;font-size:clamp(28px,3vw,39px)!important;line-height:1.3!important;font-weight:600!important}
.dpx-wishlist-empty{background:#FBF8F2!important;border-color:#DED4C5!important}
.dpx-wishlist-empty strong{color:#063832!important;font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important;font-size:21px!important;line-height:1.4!important;font-weight:600!important}
.dpx-wishlist-empty a{background:#0A4A43!important;border-color:#0A4A43!important;border-radius:6px!important}
.dpx-wishlist-toast{direction:rtl;background:#063832!important;font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif!important}.dpx-wishlist-toast__icon{background:#C89A45!important}
.dpx-wishlist-toast__link{margin-left:0!important;margin-right:4px!important;padding-left:0!important;padding-right:8px!important;border-left:0!important;border-right:1px solid rgba(255,255,255,.22)!important}
@media(max-width:767px){
  .dpx-archive{padding-top:7px!important}.dpx-archive-hero{padding:16px 14px!important;border-radius:13px!important}.dpx-archive-hero h1{font-size:30px!important}
  .dpx-category-section,.dpx-products-section{margin-top:7px!important;padding:10px!important;border-radius:11px!important}
  .dpx-section-heading h2{font-size:18px!important}.dpx-category-card{width:82%!important;min-width:82%!important;max-width:82%!important;flex-basis:82%!important}
}
