/* ── Floating Widget ───────────────────────────────────────── */

/* Wrapper – pozycja stała po prawej stronie */
.elementor-widget-floating_widget {
    position: fixed !important;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    overflow: visible !important;
}

/* Kontener zewnętrzny */
.fw-widget {
    position: relative;
    padding: 48px 16px 8px 24px; /* pt-12 pl-6 pb-2 pr-4 */
    overflow: visible; /* trigger musi być widoczny poza kontenerem */
}

/* Kontener wewnętrzny – animacja slide */
.fw-widget__container {
    position: relative;
    transition: transform 0.7s ease;
    transform: translateX(0);
    z-index: 1;
}

/* Stan zamknięty – wysuń kontener w prawo, poza ekran */
.fw-widget.fw-widget--closed .fw-widget__container {
    transform: translateX(calc(100% + 30px));
}

/* Bez animacji przy inicjalizacji (usuwane po 50ms) */
.fw-widget.fw-widget--no-transition .fw-widget__container {
    transition: none !important;
}

/* Przycisk główny */
.fw-widget__link {
    display: block;
    border: 2px solid #000;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 4px 6px rgba(0,0,0,0.25);
    pointer-events: auto;
    position: relative;
    overflow: visible;
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
    white-space: nowrap;
}

/* Ozdoba SVG – desktop: nad przyciskiem, wyśrodkowana */
.fw-ornament--desktop {
    position: absolute;
    top: -42px;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: block;
    transition: transform 0.3s ease;
    pointer-events: none;
}

.fw-widget__link:hover .fw-ornament--desktop {
    transform: translateY(-8px);
}

/* Ozdoba SVG – mobile: po prawej, wyśrodkowana pionowo */
.fw-ornament--mobile {
    position: absolute;
    top: -8px;
    bottom: -8px;
    right: -16px;
    margin: auto 0;
    height: 75px;
    display: block;
    transition: transform 0.7s ease;
    pointer-events: none;
}

/* Przycisk zamknięcia */
.fw-widget__close {
    position: absolute;
    top: -24px;
    right: 4px;
    cursor: pointer;
    pointer-events: auto;
    display: block;
    transition: opacity 0.2s ease;
}

.fw-widget__close:hover {
    opacity: 0.7;
}

/* Trigger – pin/zakładka, pozycja fixed przy prawej krawędzi */
.fw-widget__trigger {
    position: fixed;
    right: 0;
    top: 70%;
    transform: translateY(-50%) translateX(0); /* domyślnie lekko schowany za krawędzią */
    height: 75px;
    width: 50px;
    cursor: pointer;
    pointer-events: auto;
    display: block;
    z-index: 10;
    transition: transform 0.7s ease;
}

/* Gdy otwarty – trigger przesunięty w lewo o szerokość kontenera, cofnięty o 30px w prawo */
.fw-widget:not(.fw-widget--closed) .fw-widget__trigger {
    transform: translateY(-50%) translateX(calc(-1 * var(--fw-container-width, 200px) + 30px));
}

.fw-widget:not(.fw-widget--closed) .fw-widget__trigger:hover {
    transform: translateY(-50%) translateX(calc(-1 * var(--fw-container-width, 200px) + 30px - 4px));
}

/* Bez animacji przy inicjalizacji */
.fw-widget.fw-widget--no-transition .fw-widget__trigger {
    transition: none !important;
}

/* ── Responsywność ─────────────────────────────────────────── */
@media (min-width: 1025px) {
    /* Desktop – brak ozdoby mobile, padding-right 0 */
    .fw-ornament--mobile {
        display: none;
    }

    .fw-widget {
        padding-right: 0;
    }
}

@media (max-width: 1024px) {
    /* Mobile/tablet – brak ozdoby desktop */
    .fw-ornament--desktop {
        display: none;
    }
}
