/* ==================== UNIFIED ARROW STYLES ==================== */
.sb-arrow-target { 
    display: flex !important; 
    align-items: center !important; 
    justify-content: center !important; 
    transition: 0.3s; 
    z-index: 10; 
    cursor: pointer; 
    color: var(--sb-arrow-color, #fff) !important; 
    background: transparent; 
    border: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

/* Uniwersalna ikona strzałki w prawo */
.sb-arrow-target::before { 
    content: "›" !important; 
    font-size: 36px !important; 
    line-height: 1 !important; 
    font-family: Arial, sans-serif !important; 
    display: block !important; 
    color: var(--sb-arrow-color, #fff) !important; 
}

/* Uniwersalna ikona strzałki w lewo */
.sb-arrow-target.left::before, 
.sb-arrow-target.swiper-button-prev::before, 
.sb-arrow-target.glide__arrow--left::before, 
.sb-arrow-target.splide__arrow--prev::before, 
.sb-arrow-target.previous::before { 
    content: "‹" !important; 
}

/* Ukrywanie natywnych SVG/ikon we wszystkich bibliotekach */
.sb-slider-container svg,
.sb-slider-container .splide__arrow svg,
.sb-slider-container .flickity-prev-next-button svg,
.sb-slider-container .flickity-button-icon,
.sb-slider-container .swiper-button-next::after,
.sb-slider-container .swiper-button-prev::after { 
    display: none !important; 
    content: none !important; 
}

/* Pozycjonowanie strzałek dla poszczególnych bibliotek */
.sb-slider-container .swiper-button-next { right: 15px !important; left: auto !important; }
.sb-slider-container .swiper-button-prev { left: 15px !important; right: auto !important; }

.sb-slider-container .splide__arrow--next { right: 15px !important; left: auto !important; }
.sb-slider-container .splide__arrow--prev { left: 15px !important; right: auto !important; }

.sb-slider-container .flickity-prev-next-button.next { right: 15px !important; left: auto !important; }
.sb-slider-container .flickity-prev-next-button.previous { left: 15px !important; right: auto !important; }

.sb-slider-container .glide__arrow--right { right: 15px !important; left: auto !important; }
.sb-slider-container .glide__arrow--left { left: 15px !important; right: auto !important; }


/* ==================== 8 NAVIGATION THEMES ==================== */
.sb-arrow-circle-dark .sb-arrow-target { background: rgba(0,0,0,0.7) !important; border-radius: 50%; width:45px; height:45px; }
.sb-arrow-circle-light .sb-arrow-target { background: rgba(255,255,255,0.9) !important; border-radius: 50%; width:45px; height:45px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); }
.sb-arrow-square-dark .sb-arrow-target { background: #000 !important; border-radius: 0; width:45px; height:45px; }
.sb-arrow-minimal-line .sb-arrow-target { background: transparent !important; border: 1px solid var(--sb-arrow-color, #fff) !important; border-radius: 50%; width:50px; height:50px; }
.sb-arrow-minimal-line .sb-arrow-target:hover { background: rgba(0,0,0,0.05) !important; }
.sb-arrow-floating .sb-arrow-target { background: #fff !important; border-radius: 8px; box-shadow: 0 10px 20px rgba(0,0,0,0.15) !important; width:50px; height:50px; }
.sb-arrow-diamond .sb-arrow-target { background: transparent !important; border: 2px solid var(--sb-arrow-color, #fff) !important; border-radius: 0; width:45px; height:45px; transform: translateY(-50%) rotate(45deg); }
.sb-arrow-diamond .sb-arrow-target::before { transform: rotate(-45deg); }
.sb-arrow-massive .sb-arrow-target { background: transparent !important; width:60px; height:60px; text-shadow: 0 0 15px rgba(0,0,0,0.6); }
.sb-arrow-massive .sb-arrow-target::before { font-size: 60px !important; font-weight: 200; }


/* ==================== BUTTONS CORE & STYLES ==================== */
.sb-buttons { display: flex !important; flex-wrap: wrap !important; gap: 15px !important; margin-top: 25px; align-items: center; }

.sb-btn { display: inline-flex; align-items: center; justify-content: center; padding: 12px 25px; border-radius: var(--sb-radius, 4px); font-weight: bold; text-decoration: none; transition: all 0.3s ease; position:relative; overflow:hidden; font-family: inherit; font-size: 14px; cursor: pointer; box-sizing: border-box; margin: 0 !important; }
.sb-btn:hover { text-decoration: none; transform: translateY(-2px); }

.sb-btn.sb-btn-custom-1 { background: var(--sb-btn1-bg, #3b82f6); color: var(--sb-btn1-color, #fff); border: 2px solid var(--sb-btn1-bg, #3b82f6); }
.sb-btn.sb-btn-custom-2 { background: var(--sb-btn2-bg, transparent); color: var(--sb-btn2-color, #fff); border: 2px solid var(--sb-btn2-color, #fff); }

.sb-btn.sb-hover-scale:hover { transform: scale(1.08) translateY(-2px); }
.sb-btn.sb-hover-lift:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.3); }
.sb-btn.sb-hover-glow:hover { box-shadow: 0 0 15px currentColor; filter: brightness(1.2); }
.sb-btn.sb-hover-invert:hover { background: var(--sb-btn1-color, #fff) !important; color: var(--sb-btn1-bg, #3b82f6) !important; }
.sb-btn.sb-hover-darken:hover { filter: brightness(0.85); }

.sb-btn-pill { border-radius: 50px !important; }
.sb-btn-square { border-radius: 0 !important; }
.sb-btn-outline { background: transparent !important; }
.sb-btn-ghost { background: transparent !important; border-color: transparent !important; }
.sb-btn-3d { box-shadow: 0 5px 0px rgba(0,0,0,0.3); }
.sb-btn-3d:active { transform: translateY(5px); box-shadow: 0 0px 0px; }
.sb-btn-neumorphic { border: none !important; box-shadow: 4px 4px 10px rgba(0,0,0,0.3), -4px -4px 10px rgba(255,255,255,0.1); backdrop-filter: blur(5px);}
.sb-btn-neon { border: 2px solid currentColor !important; box-shadow: 0 0 10px currentColor, inset 0 0 10px currentColor; }
.sb-btn-brutalist { border: 3px solid #000 !important; box-shadow: 6px 6px 0 #000; }
.sb-btn-gradient { background: linear-gradient(45deg, #3b82f6, #8b5cf6) !important; border:none !important; }
.sb-btn-minimal { padding: 5px 0 !important; border: none !important; background: transparent !important; border-bottom: 2px solid transparent !important; }
.sb-btn-minimal:hover { border-bottom-color: currentColor !important; }
.sb-btn-glass { backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.4) !important; }
.sb-btn-cyberpunk { text-transform: uppercase; font-weight: 900; letter-spacing: 1px; clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px); }
.sb-btn-skewed { transform: skewX(-15deg); font-style: italic; }
.sb-btn-elegant { border: 1px solid currentColor !important; text-transform: uppercase; letter-spacing: 3px; font-weight: 300; }