.wblc-backdrop{
    position:fixed;
    inset:0;
    z-index:9996;
    background:rgba(8,6,13,.08);
    backdrop-filter:blur(0);
    opacity:0;
    pointer-events:none;
    transition:.22s ease;
}

.wblc-backdrop.wblc-visible{
    opacity:1;
    pointer-events:auto;
    backdrop-filter:blur(2px);
}

.wblc-arrow{
    position:fixed;
    top:54%;
    transform:translateY(-50%);
    z-index:9998;
    width:32px;
    height:104px;
    border:0;
    padding:0;
    cursor:pointer;
    background:transparent;
    opacity:.32;
    transition:.22s ease;
}

.wblc-arrow:hover,
.wblc-arrow.wblc-active{
    opacity:.82;
}

.wblc-arrow-left{left:6px;}
.wblc-arrow-right{right:6px;}

.wblc-arrow span{
    position:absolute;
    inset:0;
}

.wblc-arrow-left span::before,
.wblc-arrow-right span::before{
    content:"";
    position:absolute;
    top:50%;
    width:28px;
    height:28px;
    border-top:1.4px solid rgba(20,20,25,.56);
    border-left:1.4px solid rgba(20,20,25,.56);
    filter:drop-shadow(0 1px 4px rgba(255,255,255,.9));
}

.wblc-arrow-left span::before{
    left:7px;
    transform:translateY(-50%) rotate(-45deg);
    animation:wblcPulseLeft 1.9s ease-in-out infinite;
}

.wblc-arrow-right span::before{
    right:7px;
    transform:translateY(-50%) rotate(135deg);
    animation:wblcPulseRight 1.9s ease-in-out infinite;
}

.wblc-carousel{
    position:fixed;
    left:50%;
    bottom:96px;
    z-index:9999;
    width:min(430px, 86vw);
    overflow:hidden;
    border-radius:28px;
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) translateY(16px) scale(.97);
    transition:.24s ease;
    box-shadow:0 18px 48px rgba(0,0,0,.24);
}

.wblc-carousel.wblc-visible{
    opacity:1;
    pointer-events:auto;
    transform:translateX(-50%) translateY(0) scale(1);
}

.wblc-heading{
    position:absolute;
    top:12px;
    left:14px;
    z-index:6;
    display:flex;
    gap:7px;
    align-items:center;
    max-width:calc(100% - 64px);
    pointer-events:none;
}

.wblc-heading strong,
.wblc-heading span{
    display:inline-flex;
    align-items:center;
    height:26px;
    padding:0 10px;
    border-radius:999px;
    color:#fff;
    font-size:11px;
    line-height:1;
    font-weight:900;
    background:rgba(10,10,18,.48);
    backdrop-filter:blur(12px);
    white-space:nowrap;
    box-shadow:0 6px 16px rgba(0,0,0,.12);
}

.wblc-heading span{
    background:linear-gradient(135deg,#7b2cff,#ff4fa3);
}

.wblc-track{
    display:flex;
    width:100%;
    transition:transform .30s cubic-bezier(.2,.8,.2,1);
    touch-action:pan-y;
    perspective:1400px;
}

.wblc-track.no-transition{
    transition:none;
}

.wblc-card{
    width:100%;
    flex:0 0 100%;
    min-height:154px;
    padding:54px 14px 18px;
    display:grid;
    grid-template-columns:106px minmax(0,1fr);
    gap:15px;
    align-items:center;
    text-decoration:none;
    color:#fff;
    background:
        linear-gradient(135deg, rgba(19,18,30,.96), rgba(45,25,53,.94)),
        radial-gradient(circle at 18% 0%, rgba(123,44,255,.34), transparent 36%),
        radial-gradient(circle at 100% 100%, rgba(255,122,89,.30), transparent 40%);
    border:1px solid rgba(255,255,255,.16);
    backdrop-filter:blur(18px) saturate(135%);
    position:relative;
    overflow:hidden;
    transition:
        transform .34s cubic-bezier(.2,.8,.2,1),
        opacity .28s ease,
        filter .28s ease,
        box-shadow .28s ease;
}

.wblc-card::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(120deg, rgba(255,255,255,.13), transparent 32%, rgba(255,255,255,.04));
    pointer-events:none;
}

.wblc-card:hover{
    color:#fff;
}

.wblc-card-prev{
    transform:scale(.96) translateX(-6%) translateY(6px) rotate(-2deg);
    opacity:.50;
    filter:blur(.15px);
}

.wblc-card-next{
    transform:scale(.96) translateX(6%) translateY(6px) rotate(2deg);
    opacity:.50;
    filter:blur(.15px);
}

.wblc-card-active{
    transform:scale(1) translateX(0) translateY(0) rotate(0);
    opacity:1;
    z-index:3;
    box-shadow:
        0 22px 56px rgba(0,0,0,.32),
        0 8px 24px rgba(123,44,255,.14);
}

.wblc-img{
    position:relative;
    width:106px;
    height:106px;
    border-radius:22px;
    overflow:hidden;
    background:linear-gradient(135deg,#7b2cff,#ff7a59);
    box-shadow:0 10px 24px rgba(0,0,0,.25);
    z-index:1;
    transition:transform .35s ease;
}

.wblc-card-active .wblc-img{
    transform:scale(1.018);
}

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

.wblc-no-img{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}

.wblc-body{
    position:relative;
    z-index:1;
    min-width:0;
    padding-right:22px;
}

.wblc-tags{
    min-height:0;
    margin-bottom:7px;
}

.wblc-current{
    display:inline-flex;
    padding:4px 9px;
    border-radius:999px;
    font-size:10px;
    line-height:1;
    font-weight:900;
    background:rgba(255,255,255,.16);
    color:#fff;
}

.wblc-body strong{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:18px;
    line-height:1.16;
    font-weight:950;
    color:#fff;
    text-shadow:0 2px 9px rgba(0,0,0,.36);
}

.wblc-meta{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:10px;
    align-items:center;
}

.wblc-price{
    display:inline-flex;
    padding:6px 11px;
    border-radius:999px;
    background:linear-gradient(135deg,#ff2d8d,#ff7a59);
    font-size:13px;
    line-height:1;
    font-weight:950;
    color:#fff;
    box-shadow:0 8px 18px rgba(255,45,141,.20);
}

.wblc-location{
    font-size:12px;
    opacity:.88;
    color:#fff;
}

.wblc-end-card{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:32px 26px;
    cursor:default;
}

.wblc-end-icon{
    width:46px;
    height:46px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:12px;
    background:linear-gradient(135deg,#7b2cff,#ff7a59);
    font-size:24px;
    font-weight:950;
}

.wblc-end-card strong{
    font-size:20px;
    margin-bottom:6px;
}

.wblc-end-card p{
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:14px;
    line-height:1.35;
}

.wblc-dots{
    position:absolute;
    left:50%;
    bottom:12px;
    transform:translateX(-50%);
    display:flex;
    gap:6px;
    z-index:4;
}

.wblc-dots span{
    width:5px;
    height:5px;
    border-radius:999px;
    background:rgba(255,255,255,.38);
    transition:.2s;
}

.wblc-dots span.active{
    width:18px;
    background:#fff;
}

.wblc-loader{
    position:absolute;
    left:50%;
    top:45px;
    transform:translateX(-50%);
    z-index:4;
    white-space:nowrap;
    font-size:11px;
    font-weight:800;
    color:#fff;
    padding:5px 10px;
    border-radius:999px;
    background:rgba(20,20,25,.44);
    backdrop-filter:blur(8px);
    opacity:0;
    transition:.2s;
}

.wblc-loader.visible{
    opacity:1;
}

.wblc-close{
    position:absolute;
    right:12px;
    top:12px;
    z-index:7;
    border:0;
    width:31px;
    height:31px;
    border-radius:50%;
    background:rgba(255,255,255,.16);
    color:#fff;
    font-size:21px;
    line-height:1;
    cursor:pointer;
    backdrop-filter:blur(8px);
}

@keyframes wblcPulseLeft{
    0%,100%{opacity:.20; transform:translateY(-50%) translateX(0) rotate(-45deg);}
    50%{opacity:.68; transform:translateY(-50%) translateX(-4px) rotate(-45deg);}
}

@keyframes wblcPulseRight{
    0%,100%{opacity:.20; transform:translateY(-50%) translateX(0) rotate(135deg);}
    50%{opacity:.68; transform:translateY(-50%) translateX(4px) rotate(135deg);}
}

@media(max-width:768px){
    .wblc-arrow{
        top:54%;
        width:27px;
        height:92px;
    }

    .wblc-arrow-left{left:2px;}
    .wblc-arrow-right{right:2px;}

    .wblc-arrow-left span::before,
    .wblc-arrow-right span::before{
        width:23px;
        height:23px;
        border-width:1.3px;
    }

    .wblc-carousel{
        width:min(368px, 88vw);
        bottom:96px;
        border-radius:24px;
    }

    .wblc-card{
        min-height:142px;
        padding:50px 11px 18px;
        grid-template-columns:96px minmax(0,1fr);
        gap:13px;
    }

    .wblc-img{
        width:96px;
        height:96px;
        border-radius:19px;
    }

    .wblc-body{
        padding-right:18px;
    }

    .wblc-body strong{
        font-size:16px;
    }

    .wblc-heading{
        top:11px;
        left:11px;
    }

    .wblc-heading strong,
    .wblc-heading span{
        height:25px;
        padding:0 9px;
        font-size:10px;
    }
}

@media(max-width:390px){
    .wblc-carousel{
        bottom:86px;
        width:90vw;
    }

    .wblc-card{
        grid-template-columns:84px minmax(0,1fr);
        min-height:128px;
        padding-top:47px;
    }

    .wblc-img{
        width:84px;
        height:84px;
        border-radius:17px;
    }

    .wblc-body strong{
        font-size:15px;
    }

    .wblc-price{
        font-size:12px;
        padding:5px 9px;
    }
}


/* Smooth swipe upgrade */
.wblc-carousel,
.wblc-track,
.wblc-card{
    -webkit-user-select:none;
    user-select:none;
}

.wblc-track{
    touch-action:pan-y pinch-zoom;
    cursor:grab;
}

.wblc-track:active{
    cursor:grabbing;
}

.wblc-card{
    -webkit-tap-highlight-color:transparent;
}

/* zone tactile plus confortable */
.wblc-carousel::before{
    content:"";
    position:absolute;
    inset:-18px -10px;
    z-index:-1;
}

/* petit repère visuel pour inciter au swipe */
.wblc-carousel.wblc-visible::after{
    content:"Glisse doucement";
    position:absolute;
    left:50%;
    bottom:31px;
    transform:translateX(-50%);
    z-index:5;
    font-size:10px;
    font-weight:800;
    color:rgba(255,255,255,.72);
    pointer-events:none;
    animation:wblcHintFade 3.6s ease forwards;
}

@keyframes wblcHintFade{
    0%,55%{opacity:.85;}
    100%{opacity:0;}
}

@media(max-width:768px){
    .wblc-carousel{
        width:min(385px, 92vw);
    }

    .wblc-card{
        min-height:146px;
    }
}


/* Lock page behind carousel */
body.wblc-page-locked{
    position:fixed !important;
    width:100% !important;
    overflow:hidden !important;
    left:0;
    right:0;
    overscroll-behavior:none;
}

body.wblc-page-locked .wblc-backdrop{
    touch-action:none;
}

body.wblc-page-locked .wblc-carousel{
    touch-action:none;
}

html:has(body.wblc-page-locked){
    overflow:hidden;
}


/* UI polish v1.3 */
.wblc-track{
    will-change:transform;
    transform:translate3d(0,0,0);
    backface-visibility:hidden;
    -webkit-font-smoothing:antialiased;
}

.wblc-card{
    will-change:transform, opacity;
    transform:translate3d(0,0,0);
    backface-visibility:hidden;
}

.wblc-img img{
    transform:translateZ(0);
}

/* side rail arrows */
.wblc-arrow{
    width:42px !important;
    height:118px !important;
    opacity:.78 !important;
    background:rgba(18,18,28,.18) !important;
    backdrop-filter:blur(10px);
    box-shadow:0 10px 28px rgba(0,0,0,.14);
}

.wblc-arrow-left{
    left:0 !important;
    border-radius:0 999px 999px 0;
    border-right:1px solid rgba(255,255,255,.25);
}

.wblc-arrow-right{
    right:0 !important;
    border-radius:999px 0 0 999px;
    border-left:1px solid rgba(255,255,255,.25);
}

.wblc-arrow:hover,
.wblc-arrow.wblc-active{
    background:rgba(18,18,28,.32) !important;
    opacity:1 !important;
}

.wblc-arrow-left span::before,
.wblc-arrow-right span::before{
    width:22px !important;
    height:22px !important;
    border-top:2px solid rgba(255,255,255,.86) !important;
    border-left:2px solid rgba(255,255,255,.86) !important;
    filter:drop-shadow(0 2px 8px rgba(0,0,0,.35)) !important;
}

.wblc-arrow-left span::before{
    left:14px !important;
}

.wblc-arrow-right span::before{
    right:14px !important;
}

/* search return button */
.wblc-home{
    position:fixed;
    left:0;
    top:calc(54% - 112px);
    z-index:9998;
    width:42px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:0 999px 999px 0;
    background:rgba(18,18,28,.22);
    border-right:1px solid rgba(255,255,255,.25);
    backdrop-filter:blur(10px);
    box-shadow:0 10px 28px rgba(0,0,0,.14);
    text-decoration:none;
    transition:.22s ease;
}

.wblc-home:hover{
    background:rgba(18,18,28,.36);
}

.wblc-home span{
    position:relative;
    width:18px;
    height:16px;
    display:block;
}

.wblc-home span::before{
    content:"";
    position:absolute;
    left:1px;
    top:4px;
    width:16px;
    height:12px;
    border:2px solid rgba(255,255,255,.86);
    border-top:0;
    border-radius:2px 2px 4px 4px;
    box-sizing:border-box;
    filter:drop-shadow(0 2px 8px rgba(0,0,0,.32));
}

.wblc-home span::after{
    content:"";
    position:absolute;
    left:2px;
    top:-1px;
    width:13px;
    height:13px;
    border-left:2px solid rgba(255,255,255,.86);
    border-top:2px solid rgba(255,255,255,.86);
    transform:rotate(45deg);
    border-radius:2px 0 0 0;
    filter:drop-shadow(0 2px 8px rgba(0,0,0,.32));
}

/* smoother card visual */
.wblc-card{
    transition:
        transform .24s cubic-bezier(.2,.9,.2,1),
        opacity .22s ease,
        filter .22s ease,
        box-shadow .22s ease !important;
}

.wblc-track{
    transition:transform .22s cubic-bezier(.16,.84,.28,1) !important;
}

.wblc-track.no-transition{
    transition:none !important;
}

@media(max-width:768px){
    .wblc-arrow{
        width:38px !important;
        height:106px !important;
    }

    .wblc-arrow-left span::before{
        left:13px !important;
    }

    .wblc-arrow-right span::before{
        right:13px !important;
    }

    .wblc-home{
        width:38px;
        height:48px;
        top:calc(54% - 102px);
    }
}


/* v2.1 - desktop + contrast buttons */
.wblc-carousel.wblc-visible::after{
    display:none !important;
    content:none !important;
}

.wblc-alert-btn{
    text-decoration:none !important;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:6px;
    background:linear-gradient(135deg,#7b2cff,#ff4fa3) !important;
    color:#fff !important;
    box-shadow:0 8px 22px rgba(123,44,255,.22) !important;
}

.wblc-alert-btn::before{
    content:"🔔";
    font-size:11px;
    line-height:1;
}

.wblc-alert-btn:hover{
    color:#fff !important;
}

.wblc-arrow{
    width:30px !important;
    height:92px !important;
    opacity:.92 !important;
    background:rgba(255,255,255,.86) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    box-shadow:
        0 10px 28px rgba(0,0,0,.18),
        0 0 0 1px rgba(0,0,0,.08),
        inset 0 1px 0 rgba(255,255,255,.75) !important;
}

.wblc-arrow-left{
    left:0 !important;
    border-radius:0 18px 18px 0 !important;
    border-right:1px solid rgba(0,0,0,.08) !important;
}

.wblc-arrow-right{
    right:0 !important;
    border-radius:18px 0 0 18px !important;
    border-left:1px solid rgba(0,0,0,.08) !important;
}

.wblc-arrow-left span::before,
.wblc-arrow-right span::before{
    width:16px !important;
    height:16px !important;
    border-top:2.3px solid #111 !important;
    border-left:2.3px solid #111 !important;
    filter:none !important;
}

.wblc-arrow-left span::before{ left:9px !important; }
.wblc-arrow-right span::before{ right:9px !important; }

.wblc-home{
    width:30px !important;
    height:42px !important;
    left:0 !important;
    top:calc(54% - 108px) !important;
    opacity:.92 !important;
    background:rgba(255,255,255,.86) !important;
    border-radius:0 18px 18px 0 !important;
    border-right:1px solid rgba(0,0,0,.08) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    box-shadow:
        0 10px 28px rgba(0,0,0,.18),
        0 0 0 1px rgba(0,0,0,.08),
        inset 0 1px 0 rgba(255,255,255,.75) !important;
}

.wblc-home span::before,
.wblc-home span::after{
    border-color:#111 !important;
    filter:none !important;
}

body.wblc-carousel-open .wblc-arrow,
body.wblc-carousel-open .wblc-home{
    opacity:0 !important;
    pointer-events:none !important;
}

.wblc-desktop-nav{ display:none; }

@media (min-width: 900px){

    .wblc-backdrop.wblc-visible{
        background:rgba(8,6,13,.22) !important;
        backdrop-filter:blur(5px) saturate(1.05) !important;
    }

    .wblc-carousel{
        width:min(820px, 78vw) !important;
        bottom:auto !important;
        top:50% !important;
        left:50% !important;
        transform:translate(-50%,-50%) scale(.96) !important;
        border-radius:30px !important;
        box-shadow:
            0 28px 90px rgba(0,0,0,.35),
            0 0 0 1px rgba(255,255,255,.22) inset !important;
    }

    .wblc-carousel.wblc-visible{
        transform:translate(-50%,-50%) scale(1) !important;
    }

    .wblc-card{
        min-height:330px !important;
        padding:70px 82px 70px 42px !important;
        grid-template-columns:260px minmax(0,1fr) !important;
        gap:34px !important;
        align-items:center !important;
    }

    .wblc-img{
        width:260px !important;
        height:220px !important;
        border-radius:24px !important;
    }

    .wblc-body{ padding:0 !important; }

    .wblc-body strong{
        font-size:30px !important;
        line-height:1.12 !important;
        -webkit-line-clamp:3 !important;
    }

    .wblc-current{
        font-size:12px !important;
        padding:7px 12px !important;
        margin-bottom:10px !important;
    }

    .wblc-price{
        font-size:22px !important;
        padding:9px 16px !important;
    }

    .wblc-location{ font-size:15px !important; }

    .wblc-heading{
        top:20px !important;
        left:26px !important;
    }

    .wblc-heading strong,
    .wblc-heading span{
        height:32px !important;
        font-size:13px !important;
        padding:0 14px !important;
    }

    .wblc-close{
        top:18px !important;
        right:20px !important;
        width:38px !important;
        height:38px !important;
        font-size:26px !important;
    }

    .wblc-return{
        bottom:20px !important;
        height:36px !important;
        padding:0 18px !important;
        font-size:13px !important;
    }

    .wblc-dots{ bottom:66px !important; }

    .wblc-dots span{
        width:7px !important;
        height:7px !important;
    }

    .wblc-dots span.active{ width:28px !important; }

    .wblc-loader{ top:58px !important; }

    .wblc-desktop-nav{
        display:flex !important;
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        z-index:10;
        width:48px;
        height:74px;
        border:0;
        border-radius:999px;
        align-items:center;
        justify-content:center;
        background:rgba(255,255,255,.88);
        color:#111;
        font-size:44px;
        line-height:1;
        cursor:pointer;
        box-shadow:
            0 12px 32px rgba(0,0,0,.20),
            0 0 0 1px rgba(0,0,0,.06);
        backdrop-filter:blur(12px);
        transition:.18s ease;
    }

    .wblc-desktop-nav:hover{
        background:#fff;
        transform:translateY(-50%) scale(1.04);
    }

    .wblc-desktop-prev{ left:18px; }
    .wblc-desktop-next{ right:18px; }

    .wblc-end-card{
        min-height:330px !important;
        padding:70px 50px !important;
    }

    .wblc-end-icon{
        width:62px !important;
        height:62px !important;
        font-size:30px !important;
    }

    .wblc-end-card strong{ font-size:30px !important; }

    .wblc-end-card p{
        max-width:430px;
        font-size:16px !important;
    }
}


/* v2.2 desktop navigation correction */

/* Cache les flèches de bord et Home quand le carrousel est ouvert */
body.wblc-carousel-open .wblc-arrow,
body.wblc-carousel-open .wblc-home{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Flèches internes du carrousel */
.wblc-desktop-nav{
    display:none;
}

@media (min-width: 900px){

    .wblc-desktop-nav{
        display:flex !important;
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        z-index:20;
        width:54px;
        height:86px;
        border:0;
        border-radius:999px;
        align-items:center;
        justify-content:center;
        background:rgba(255,255,255,.94);
        color:#111;
        font-size:48px;
        line-height:1;
        cursor:pointer;
        box-shadow:
            0 14px 36px rgba(0,0,0,.22),
            0 0 0 1px rgba(0,0,0,.08);
        backdrop-filter:blur(14px);
        -webkit-backdrop-filter:blur(14px);
        transition:
            transform .18s ease,
            background .18s ease,
            box-shadow .18s ease;
    }

    .wblc-desktop-nav:hover{
        background:#fff;
        transform:translateY(-50%) scale(1.05);
        box-shadow:
            0 16px 42px rgba(0,0,0,.26),
            0 0 0 1px rgba(123,44,255,.22);
    }

    .wblc-desktop-prev{
        left:18px;
    }

    .wblc-desktop-next{
        right:18px;
    }

    .wblc-desktop-prev::after,
    .wblc-desktop-next::after{
        content:"";
        position:absolute;
        inset:-10px;
    }

    .wblc-card{
        padding-left:92px !important;
        padding-right:92px !important;
    }
}

@media (max-width: 899px){
    .wblc-desktop-nav{
        display:none !important;
    }
}


/* v2.3 : cache seulement les flèches, garde Home visible */
body.wblc-carousel-open .wblc-arrow{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Home reste visible sur PC et mobile */
body.wblc-carousel-open .wblc-home{
    opacity:.92 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
}

/* Quand le carrousel est ouvert, Home passe au-dessus */
body.wblc-carousel-open .wblc-home{
    z-index:10001 !important;
}

/* Sur mobile : flèches de bord cachées à l'ouverture */
@media(max-width:899px){
    body.wblc-carousel-open .wblc-arrow{
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
    }

    body.wblc-carousel-open .wblc-home{
        opacity:.92 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }
}

/* Sur PC : flèches de bord cachées, flèches internes conservées */
@media(min-width:900px){
    body.wblc-carousel-open .wblc-arrow{
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
    }

    body.wblc-carousel-open .wblc-home{
        opacity:.92 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    .wblc-carousel.wblc-visible .wblc-desktop-nav{
        display:flex !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }
}


/* v2.4 corrections PC/mobile */

/* Cache les flèches de bord quand le carrousel est ouvert, sur PC et mobile */
body.wblc-carousel-open .wblc-arrow{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Home reste visible */
body.wblc-carousel-open .wblc-home{
    opacity:.92 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    z-index:10001 !important;
}

/* Empêche l'effet coins carrés pendant les transitions */
.wblc-carousel{
    overflow:hidden !important;
    border-radius:28px !important;
    clip-path:inset(0 round 28px);
    isolation:isolate;
}

.wblc-carousel.wblc-visible{
    border-radius:28px !important;
    clip-path:inset(0 round 28px);
}

.wblc-track,
.wblc-card{
    border-radius:inherit;
}

.wblc-card{
    border-radius:0 !important;
}

/* Flèches internes PC redesign */
@media(min-width:900px){

    .wblc-carousel{
        border-radius:32px !important;
        clip-path:inset(0 round 32px);
        overflow:hidden !important;
    }

    .wblc-carousel.wblc-visible{
        border-radius:32px !important;
        clip-path:inset(0 round 32px);
    }

    .wblc-carousel.wblc-visible .wblc-desktop-nav{
        display:flex !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }

    .wblc-desktop-nav{
        width:42px !important;
        height:42px !important;
        border-radius:50% !important;
        background:rgba(255,255,255,.78) !important;
        color:transparent !important;
        font-size:0 !important;
        box-shadow:
            0 10px 28px rgba(0,0,0,.18),
            0 0 0 1px rgba(0,0,0,.08),
            inset 0 1px 0 rgba(255,255,255,.8) !important;
        backdrop-filter:blur(14px);
        -webkit-backdrop-filter:blur(14px);
    }

    .wblc-desktop-nav:hover{
        background:rgba(255,255,255,.96) !important;
        transform:translateY(-50%) scale(1.06) !important;
        box-shadow:
            0 14px 34px rgba(0,0,0,.22),
            0 0 0 1px rgba(123,44,255,.20),
            inset 0 1px 0 rgba(255,255,255,.9) !important;
    }

    .wblc-desktop-prev{
        left:20px !important;
    }

    .wblc-desktop-next{
        right:20px !important;
    }

    .wblc-desktop-prev::before,
    .wblc-desktop-next::before{
        content:"";
        width:12px;
        height:12px;
        border-top:2.2px solid #111;
        border-left:2.2px solid #111;
        display:block;
    }

    .wblc-desktop-prev::before{
        transform:rotate(-45deg);
        margin-left:5px;
    }

    .wblc-desktop-next::before{
        transform:rotate(135deg);
        margin-right:5px;
    }

    .wblc-desktop-prev::after,
    .wblc-desktop-next::after{
        content:"";
        position:absolute;
        inset:-12px;
    }

    /* masque totalement les flèches de bord pendant ouverture PC */
    body.wblc-carousel-open .wblc-arrow{
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
        display:none !important;
    }
}

/* masque totalement les flèches de bord pendant ouverture mobile */
@media(max-width:899px){
    body.wblc-carousel-open .wblc-arrow{
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
        display:none !important;
    }
}


/* ==========================================================
   v2.5 - Style modal premium comme la maquette
   ========================================================== */

/* Les flèches de bord disparaissent totalement quand ouvert */
body.wblc-carousel-open .wblc-arrow{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Le bouton Home reste visible */
body.wblc-carousel-open .wblc-home{
    display:flex !important;
    opacity:.95 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    z-index:10001 !important;
}

/* Fond modal plus propre */
.wblc-backdrop.wblc-visible{
    background:rgba(10,8,16,.34) !important;
    backdrop-filter:blur(6px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(6px) saturate(1.08) !important;
}

/* Base carrousel */
.wblc-carousel{
    overflow:hidden !important;
    border-radius:28px !important;
    clip-path:inset(0 round 28px) !important;
    isolation:isolate;
    background:
        linear-gradient(135deg, rgba(25,16,38,.98), rgba(55,27,72,.96)) !important;
    box-shadow:
        0 22px 70px rgba(0,0,0,.36),
        0 0 0 1px rgba(255,255,255,.14) inset !important;
}

/* Carte moins “coupée”, plus premium */
.wblc-card{
    background:
        linear-gradient(135deg, rgba(24,16,38,.98), rgba(62,29,82,.96)),
        radial-gradient(circle at 0% 0%, rgba(123,44,255,.28), transparent 38%),
        radial-gradient(circle at 100% 100%, rgba(255,79,163,.22), transparent 42%) !important;
    border:0 !important;
}

/* Mobile style */
@media(max-width:899px){

    .wblc-carousel{
        width:88vw !important;
        bottom:86px !important;
        border-radius:24px !important;
        clip-path:inset(0 round 24px) !important;
    }

    .wblc-card{
        min-height:156px !important;
        grid-template-columns:minmax(0, 1fr) 92px !important;
        padding:48px 14px 44px !important;
        gap:14px !important;
    }

    .wblc-img{
        grid-column:2;
        grid-row:1;
        width:92px !important;
        height:112px !important;
        border-radius:16px !important;
        align-self:center;
        box-shadow:0 10px 28px rgba(0,0,0,.26) !important;
    }

    .wblc-body{
        grid-column:1;
        grid-row:1;
        padding:0 !important;
        align-self:center;
    }

    .wblc-body strong{
        font-size:18px !important;
        line-height:1.15 !important;
        -webkit-line-clamp:2 !important;
    }

    .wblc-price{
        margin-top:6px;
        font-size:17px !important;
        padding:0 !important;
        background:none !important;
        color:#ff4fa3 !important;
        box-shadow:none !important;
    }

    .wblc-location{
        display:block;
        margin-top:6px;
        font-size:12px !important;
        color:rgba(255,255,255,.82) !important;
    }

    .wblc-heading{
        top:13px !important;
        left:14px !important;
    }

    .wblc-heading strong,
    .wblc-heading span{
        height:25px !important;
        font-size:10px !important;
        padding:0 10px !important;
    }

    .wblc-close{
        top:12px !important;
        right:12px !important;
        width:30px !important;
        height:30px !important;
        background:rgba(255,255,255,.14) !important;
    }

    .wblc-alert-btn{
        bottom:18px !important;
        height:30px !important;
        padding:0 16px !important;
        font-size:11px !important;
    }

    .wblc-dots{
        bottom:9px !important;
    }
}

/* Desktop : grand modal centré type maquette */
@media(min-width:900px){

    .wblc-carousel{
        width:min(760px, 74vw) !important;
        bottom:auto !important;
        top:50% !important;
        left:50% !important;
        transform:translate(-50%,-50%) scale(.96) !important;
        border-radius:32px !important;
        clip-path:inset(0 round 32px) !important;
    }

    .wblc-carousel.wblc-visible{
        transform:translate(-50%,-50%) scale(1) !important;
    }

    .wblc-card{
        min-height:360px !important;
        grid-template-columns:minmax(0,1fr) 260px !important;
        padding:72px 58px 76px 42px !important;
        gap:42px !important;
        align-items:center !important;
    }

    .wblc-img{
        grid-column:2;
        width:260px !important;
        height:260px !important;
        border-radius:24px !important;
        box-shadow:0 18px 42px rgba(0,0,0,.30) !important;
    }

    .wblc-body{
        grid-column:1;
        padding:0 !important;
    }

    .wblc-body strong{
        font-size:32px !important;
        line-height:1.12 !important;
        -webkit-line-clamp:3 !important;
    }

    .wblc-price{
        margin-top:12px !important;
        padding:0 !important;
        background:none !important;
        color:#ff4fa3 !important;
        box-shadow:none !important;
        font-size:32px !important;
        font-weight:950 !important;
    }

    .wblc-location{
        display:block;
        margin-top:12px;
        font-size:16px !important;
        color:rgba(255,255,255,.82) !important;
    }

    .wblc-heading{
        top:24px !important;
        left:30px !important;
    }

    .wblc-heading strong,
    .wblc-heading span{
        height:32px !important;
        font-size:13px !important;
        padding:0 14px !important;
    }

    .wblc-close{
        top:22px !important;
        right:24px !important;
        width:38px !important;
        height:38px !important;
        background:rgba(255,255,255,.14) !important;
        color:#fff !important;
    }

    .wblc-alert-btn{
        left:42px !important;
        bottom:72px !important;
        transform:none !important;
        height:36px !important;
        padding:0 18px !important;
        font-size:13px !important;
    }

    .wblc-dots{
        bottom:35px !important;
    }

    .wblc-dots span{
        width:6px !important;
        height:6px !important;
    }

    .wblc-dots span.active{
        width:26px !important;
    }

    /* Flèches internes élégantes */
    .wblc-carousel.wblc-visible .wblc-desktop-nav{
        display:flex !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    .wblc-desktop-nav{
        position:absolute !important;
        bottom:28px !important;
        top:auto !important;
        transform:none !important;
        z-index:25 !important;
        width:54px !important;
        height:54px !important;
        border:1px solid rgba(255,255,255,.24) !important;
        border-radius:50% !important;
        background:rgba(255,255,255,.08) !important;
        color:transparent !important;
        font-size:0 !important;
        backdrop-filter:blur(12px);
        -webkit-backdrop-filter:blur(12px);
        box-shadow:none !important;
        transition:.18s ease !important;
    }

    .wblc-desktop-nav:hover{
        background:rgba(255,255,255,.18) !important;
        transform:translateY(-2px) !important;
    }

    .wblc-desktop-prev{
        left:34px !important;
        right:auto !important;
    }

    .wblc-desktop-next{
        right:34px !important;
        left:auto !important;
    }

    .wblc-desktop-prev::before,
    .wblc-desktop-next::before{
        content:"";
        width:14px;
        height:14px;
        display:block;
        border-top:2.4px solid #fff;
        border-left:2.4px solid #fff;
    }

    .wblc-desktop-prev::before{
        transform:rotate(-45deg);
        margin-left:5px;
    }

    .wblc-desktop-next::before{
        transform:rotate(135deg);
        margin-right:5px;
    }

    /* Les flèches de bord sont supprimées à l'ouverture PC */
    body.wblc-carousel-open .wblc-arrow{
        display:none !important;
    }
}


/* v2.6 fix : flèches de bord masquées + prix/livraison visibles */

/* Masquage ultra-forcé des flèches de bord quand le carrousel est actif */
html body.wblc-carousel-open .wblc-arrow,
html body.wblc-carousel-open button.wblc-arrow,
html body.wblc-page-locked .wblc-arrow,
html body.wblc-page-locked button.wblc-arrow,
.wblc-backdrop.wblc-visible ~ .wblc-arrow{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Home reste visible */
html body.wblc-carousel-open .wblc-home,
html body.wblc-page-locked .wblc-home{
    display:flex !important;
    opacity:.95 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    z-index:10001 !important;
}

/* Prix et livraison */
.wblc-price{
    display:inline-flex !important;
    color:#ff4fa3 !important;
    font-weight:950 !important;
}

.wblc-shipping{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:12px;
    font-weight:800;
}

@media(max-width:899px){
    .wblc-meta{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:5px !important;
        margin-top:8px !important;
    }

    .wblc-price{
        font-size:18px !important;
        padding:0 !important;
        background:none !important;
        box-shadow:none !important;
    }

    .wblc-shipping{
        font-size:10.5px !important;
        padding:4px 8px !important;
    }
}

@media(min-width:900px){
    .wblc-meta{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:8px !important;
        margin-top:12px !important;
    }

    .wblc-price{
        font-size:30px !important;
        padding:0 !important;
        background:none !important;
        box-shadow:none !important;
    }

    .wblc-shipping{
        font-size:14px !important;
        padding:7px 12px !important;
    }
}


/* v2.8 PC align + etat */

/* Flèches de bord masquées quand carrousel actif */
html body.wblc-carousel-open .wblc-arrow,
html body.wblc-page-locked .wblc-arrow,
.wblc-backdrop.wblc-visible ~ .wblc-arrow{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Home visible */
html body.wblc-carousel-open .wblc-home,
html body.wblc-page-locked .wblc-home{
    display:flex !important;
    opacity:.95 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    z-index:10001 !important;
}

.wblc-condition{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(123,44,255,.22);
    color:#fff;
    font-size:12px;
    font-weight:850;
}

/* correction globale coins */
.wblc-carousel{
    overflow:hidden !important;
    isolation:isolate;
}

/* ===== Desktop layout stable ===== */
@media(min-width:900px){

    .wblc-carousel{
        width:min(720px, 72vw) !important;
        min-height:390px !important;
        top:50% !important;
        bottom:auto !important;
        left:50% !important;
        transform:translate(-50%,-50%) scale(1) !important;
        border-radius:28px !important;
        clip-path:inset(0 round 28px) !important;
        background:
            linear-gradient(135deg, rgba(24,16,38,.98), rgba(55,27,72,.96)) !important;
        box-shadow:
            0 26px 80px rgba(0,0,0,.34),
            0 0 0 1px rgba(255,255,255,.16) inset !important;
    }

    .wblc-carousel.wblc-visible{
        transform:translate(-50%,-50%) scale(1) !important;
    }

    .wblc-card{
        min-height:390px !important;
        padding:72px 64px 74px 46px !important;
        display:grid !important;
        grid-template-columns:minmax(0, 1fr) 230px !important;
        grid-template-rows:1fr !important;
        gap:36px !important;
        align-items:center !important;
        box-sizing:border-box !important;
    }

    .wblc-img{
        grid-column:2 !important;
        grid-row:1 !important;
        width:230px !important;
        height:230px !important;
        align-self:center !important;
        justify-self:center !important;
        border-radius:22px !important;
        margin:0 !important;
        transform:none !important;
        box-shadow:0 16px 38px rgba(0,0,0,.30) !important;
    }

    .wblc-img img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    .wblc-body{
        grid-column:1 !important;
        grid-row:1 !important;
        align-self:center !important;
        justify-self:stretch !important;
        padding:0 !important;
        min-width:0 !important;
        max-width:100% !important;
    }

    .wblc-body strong{
        display:block !important;
        font-size:30px !important;
        line-height:1.12 !important;
        font-weight:950 !important;
        margin:0 0 12px !important;
        max-width:100% !important;
        -webkit-line-clamp:3 !important;
    }

    .wblc-meta{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:9px !important;
        margin-top:12px !important;
    }

    .wblc-price{
        display:block !important;
        padding:0 !important;
        background:none !important;
        box-shadow:none !important;
        color:#ff4fa3 !important;
        font-size:30px !important;
        font-weight:950 !important;
        line-height:1 !important;
    }

    .wblc-condition,
    .wblc-shipping,
    .wblc-location{
        font-size:13px !important;
        padding:7px 11px !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.12) !important;
        color:#fff !important;
        line-height:1 !important;
    }

    .wblc-heading{
        top:22px !important;
        left:30px !important;
        z-index:8 !important;
    }

    .wblc-heading strong,
    .wblc-heading span{
        height:30px !important;
        font-size:12px !important;
        padding:0 13px !important;
    }

    .wblc-close{
        top:22px !important;
        right:24px !important;
        width:34px !important;
        height:34px !important;
        z-index:9 !important;
    }

    .wblc-alert-btn{
        position:absolute !important;
        left:46px !important;
        bottom:52px !important;
        transform:none !important;
        height:34px !important;
        padding:0 17px !important;
        font-size:12px !important;
        z-index:8 !important;
    }

    .wblc-dots{
        left:50% !important;
        bottom:30px !important;
        transform:translateX(-50%) !important;
        z-index:8 !important;
    }

    /* Flèches internes propres, alignées en bas */
    .wblc-carousel.wblc-visible .wblc-desktop-nav{
        display:flex !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    .wblc-desktop-nav{
        position:absolute !important;
        bottom:24px !important;
        top:auto !important;
        transform:none !important;
        z-index:9 !important;
        width:44px !important;
        height:44px !important;
        border-radius:50% !important;
        border:1px solid rgba(255,255,255,.22) !important;
        background:rgba(255,255,255,.08) !important;
        color:transparent !important;
        font-size:0 !important;
        backdrop-filter:blur(12px) !important;
        box-shadow:none !important;
    }

    .wblc-desktop-prev{
        left:28px !important;
        right:auto !important;
    }

    .wblc-desktop-next{
        right:28px !important;
        left:auto !important;
    }

    .wblc-desktop-prev::before,
    .wblc-desktop-next::before{
        content:"";
        display:block;
        width:13px;
        height:13px;
        border-top:2.2px solid #fff;
        border-left:2.2px solid #fff;
    }

    .wblc-desktop-prev::before{
        transform:rotate(-45deg);
        margin-left:5px;
    }

    .wblc-desktop-next::before{
        transform:rotate(135deg);
        margin-right:5px;
    }
}

/* mobile : état compact */
@media(max-width:899px){
    .wblc-condition{
        font-size:10.5px !important;
        padding:4px 8px !important;
    }
}
