/**
 * Kundenportal Button - Desktop & Mobile
 * Farbe: #00868b (Tuerkis)
 *
 * @package Rodiar-Child
 * @since 1.0.0
 */

/* =============================================
   DESKTOP STYLES
   ============================================= */

/* Desktop: Button im Menu */
.dsvy-portal-menu-item {
    flex-shrink: 0;
    white-space: nowrap;
}

.dsvy-portal-menu-item .dsvy-portal-button-wrapper {
    display: inline-flex;
    align-items: center;
    margin-left: 5px;
}

.dsvy-portal-button {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 14px;
    background: linear-gradient(135deg, #00868b 0%, #006d71 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 20px;
    font-weight: 600;
    font-size: 13px;
    white-space: nowrap;
    transition: all 0.3s ease;
    box-shadow: 0 2px 6px rgba(0, 134, 139, 0.3);
    position: relative;
    top: -4px;
}

.dsvy-portal-button:hover {
    background: linear-gradient(135deg, #009ca2 0%, #00868b 100%);
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0, 134, 139, 0.4);
    color: #ffffff !important;
}

.dsvy-portal-button svg {
    width: 14px;
    height: 14px;
    fill: currentColor;
    flex-shrink: 0;
}

/* Mobile Header Button (separater Button) */
.dsvy-mobile-portal-btn {
    display: none;
}

/* Sticky Header Desktop */
.dsvy-sticky-active .dsvy-portal-button {
    padding: 5px 12px;
    font-size: 12px;
}

/* =============================================
   MOBILE & TABLET STYLES
   Position: Ueber dem "Nach oben" Button
   ============================================= */

@media (max-width: 991px) {
    /* Menu-Button auf Mobile verstecken */
    .dsvy-portal-menu-item {
        display: none !important;
    }

    /* Mobile Button anzeigen - hoeher positioniert */
    .dsvy-mobile-portal-btn {
        display: inline-flex !important;
        position: fixed;
        bottom: 85px;
        right: 20px;
        z-index: 9999;
        align-items: center;
        justify-content: center;
        width: 56px;
        height: 56px;
        padding: 0;
        background: linear-gradient(135deg, #00868b 0%, #006d71 100%);
        color: #ffffff !important;
        text-decoration: none !important;
        border-radius: 50%;
        box-shadow: 0 4px 15px rgba(0, 134, 139, 0.4);
        transition: all 0.3s ease;
    }

    .dsvy-mobile-portal-btn:hover,
    .dsvy-mobile-portal-btn:active {
        transform: scale(1.1);
        box-shadow: 0 6px 20px rgba(0, 134, 139, 0.5);
        color: #ffffff !important;
    }

    .dsvy-mobile-portal-btn svg {
        width: 24px;
        height: 24px;
        fill: currentColor;
    }

    .dsvy-mobile-portal-btn .dsvy-portal-button-text {
        display: none;
    }
}

/* Tablet: Etwas groesserer Button */
@media (min-width: 768px) and (max-width: 991px) {
    .dsvy-mobile-portal-btn {
        width: 60px;
        height: 60px;
        bottom: 90px;
        right: 25px;
    }

    .dsvy-mobile-portal-btn svg {
        width: 26px;
        height: 26px;
    }
}
