.dcs-slider {
    --dcs-gap:40px;
    --dcs-btn-size:46px;
    --dcs-accent:#000000;
    --dcs-border:rgba(0,0,0,0.12);
    position:relative;
    display:block;
    width:100%;
    max-width:100%;
    overflow:hidden;
    box-sizing:border-box;
    touch-action:pan-y;
    user-select:none;
    cursor:grab;
}

.dcs-slider:active {
    cursor:grabbing;
}

.dcs-track {
    position:relative;
    display:block !important;
    width:100%;
    height:100%;
    min-height:480px;
    margin:0 !important;
    padding:0 !important;
}

.dcs-slide {
    position:absolute !important;
    inset:0;
    display:grid !important;
    grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
    gap:var(--dcs-gap);
    width:100%;
    height:100%;
    min-height:inherit;
    box-sizing:border-box;
    opacity:0;
    visibility:hidden;
    z-index:1;
    overflow:hidden;
    will-change:opacity,transform;
    transition:opacity 0.4s ease,visibility 0.4s ease;
}

.dcs-slide.is-active {
    opacity:1;
    visibility:visible;
    z-index:2;
}

.dcs-slide-content,.dcs-content {
    position:relative;
    z-index:2;
    align-self:center;
    min-width:0;
}

.dcs-slide-image,.dcs-slide-media {
    position:relative;
    z-index:1;
    min-width:0;
    height:100%;
    min-height:480px;
    overflow:hidden;
    border-radius:12px;
}

.dcs-slide-image img,.dcs-slide-media img,.dcs-slide>img {
    display:block;
    width:100%;
    height:100%;
    min-height:inherit;
    object-fit:cover;
    user-select:none;
    -webkit-user-drag:none;
    pointer-events:none;
}

@media (max-width:768px) {
    .dcs-slider {
        --dcs-gap:24px;
        --dcs-btn-size:42px;
    }

    .dcs-track {
        min-height:auto;
    }

    .dcs-slide {
        grid-template-columns:1fr;
        grid-template-rows:auto auto;
        gap:20px;
        position:relative !important;
        display:none !important;
        opacity:1 !important;
        visibility:visible !important;
    }

    .dcs-slide.is-active {
        display:grid !important;
    }

    .dcs-slide-image,.dcs-slide-media {
        min-height:280px;
        height:280px;
    }

    .dcs-controls {
        margin-top:24px;
        gap:12px;
    }

}

.dcs-controls {
    position:relative !important;
    z-index:100 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:18px !important;
    margin-top:28px !important;
    clear:both !important;
}

.dcs-btn-prev,.dcs-btn-next,.dcs-prev,.dcs-next {
    appearance:none !important;
    -webkit-appearance:none !important;
    outline:none !important;
    border:2px solid #111111 !important;
    background:#ffffff !important;
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
    border-radius:50% !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    transition:all 0.2s ease-in-out !important;
    box-shadow:0 4px 14px rgba(0,0,0,0.1) !important;
}

.dcs-controls button svg,.dcs-btn-prev svg,.dcs-btn-next svg {
    display:none !important;
}

.dcs-btn-prev::after,.dcs-prev::after {
    content:'\2190';
    display:inline-block;
    font-size:22px;
    font-weight:700;
    line-height:1;
    color:#111111;
    transition:color 0.2s ease;
}

.dcs-btn-next::after,.dcs-next::after {
    content:'\2192';
    display:inline-block;
    font-size:22px;
    font-weight:700;
    line-height:1;
    color:#111111;
    transition:color 0.2s ease;
}

.dcs-btn-prev:hover:not(:disabled),.dcs-btn-next:hover:not(:disabled) {
    background:#111111 !important;
    transform:translateY(-2px) scale(1.04);
    box-shadow:0 6px 18px rgba(0,0,0,0.2) !important;
}

.dcs-btn-prev:hover:not(:disabled)::after,.dcs-btn-next:hover:not(:disabled)::after {
    color:#ffffff !important;
}

.dcs-controls button:active:not(:disabled) {
    transform:translateY(0) scale(0.94);
}

.dcs-btn-prev:disabled,.dcs-btn-next:disabled {
    opacity:0.35 !important;
    border-color:#cccccc !important;
    background:#f7f7f7 !important;
    cursor:not-allowed !important;
    transform:none !important;
    box-shadow:none !important;
}

.dcs-btn-prev:disabled::after,.dcs-btn-next:disabled::after {
    color:#999999 !important;
}

.dcs-counter {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:65px;
    padding:0 8px;
    font-size:15px;
    font-weight:700;
    letter-spacing:0.1em;
    color:#111111;
    font-variant-numeric:tabular-nums;
    opacity:0.85;
    text-align:center;
}

/* Custom drag cursor: replaces the system "grab" hand with a black circle
   that shows "Drag" on hover and shrinks to two arrows while dragging. */
.dcs-slider.dcs-cursor-enabled {
    cursor:none;
}

.dcs-custom-cursor {
    position:fixed;
    top:0;
    left:0;
    width:76px;
    height:76px;
    border-radius:50%;
    background:#111111;
    color:#ffffff;
    display:flex;
    align-items:center;
    justify-content:center;
    pointer-events:none;
    z-index:9999;
    opacity:0;
    transform:translate(-50%,-50%) scale(0.85);
    transition:opacity 0.2s ease,transform 0.2s ease,width 0.2s ease,height 0.2s ease;
}

.dcs-custom-cursor.is-visible {
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
}

.dcs-custom-cursor.is-dragging {
    width:52px;
    height:52px;
}

.dcs-cursor-label {
    font-size:12px;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.dcs-cursor-arrows {
    display:none;
    font-size:16px;
    font-weight:700;
    letter-spacing:0.2em;
}

.dcs-custom-cursor.is-dragging .dcs-cursor-label {
    display:none;
}

.dcs-custom-cursor.is-dragging .dcs-cursor-arrows {
    display:inline-block;
}

@media (max-width:768px) {
    .dcs-custom-cursor {
        display:none !important;
    }

    .dcs-slider.dcs-cursor-enabled {
        cursor:grab;
    }
}
