/* Match the Expocine primary CTA: brand blue, 4px corners and Open Sans. */
/* Languages are already available in the header. Hide duplicate floating widgets. */
.linguise_switcher_root:not(.linguise_menu_root) .linguise_switcher[style*="position: fixed"],
.linguise_switcher_wrapper .linguise_switcher[style*="position: fixed"] {
    display: none !important;
}

.expocine-floating-credential {
    position: fixed;
    right: max(28px, env(safe-area-inset-right));
    bottom: max(28px, env(safe-area-inset-bottom));
    z-index: 990;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    box-sizing: border-box;
    min-height: 48px;
    max-width: calc(100vw - 32px);
    padding: 12px 14px;
    border: 1px solid var(--wp--preset--color--brand-blue-600-main, #00a8c5);
    border-radius: 4px;
    background: var(--wp--preset--color--brand-blue-600-main, #00a8c5);
    box-shadow: 0 4px 16px rgba(0, 0, 0, .18);
    color: var(--wp--preset--color--neutral-pure-white, #fff);
    font: 500 14px/22px "Open Sans", sans-serif;
    text-transform: none;
    text-decoration: none;
    transition: background-color .3s ease, border-color .3s ease;
    animation: expocine-credential-pulse 1s ease-in-out .6s 3;
}
@keyframes expocine-credential-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.035); }
}
.expocine-floating-credential svg {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    transition: transform .3s ease;
}
.expocine-floating-credential:hover {
    background: #007d92;
    border-color: #007d92;
    color: #fff;
    text-decoration: none;
}
.expocine-floating-credential:hover svg { transform: translate(2px, -2px); }
.expocine-floating-credential:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
    box-shadow: 0 0 0 5px var(--wp--preset--color--brand-blue-700, #087e96);
}
@media (max-width: 600px) {
    .expocine-floating-credential {
        right: max(16px, env(safe-area-inset-right));
        bottom: max(16px, env(safe-area-inset-bottom));
    }
}
@media (prefers-reduced-motion: reduce) {
    .expocine-floating-credential, .expocine-floating-credential svg { transition: none; animation: none; }
}
@media print { .expocine-floating-credential { display: none; } }

/* Preserve reCAPTCHA's native right-edge expansion above the registration CTA. */
body:has(.expocine-floating-credential) .grecaptcha-badge {
    bottom: max(100px, calc(env(safe-area-inset-bottom) + 100px)) !important;
}

