/* hCaptcha badge artwork: https://docs.hcaptcha.com/invisible/ */
.xfg-hcaptcha-badge,
.xfg-hcaptcha-badge * { box-sizing:border-box; }
.xfg-hcaptcha-badge {
    position:fixed;
    z-index:1101;
    right:env(safe-area-inset-right, 0px);
    bottom:calc(20px + var(--xfg-cookie-notice-height, 0px) + env(safe-area-inset-bottom, 0px));
    display:flex;
    align-items:stretch;
    height:55px;
    max-width:calc(100vw - 12px);
    border:0;
    border-radius:12px 0 0 12px;
    background:#fff;
    color:#fff;
    box-shadow:0 0 8px #ccc;
    font:400 12px/1 Arial,sans-serif;
    text-align:left;
    transform:translateX(calc(100% - 56px));
    transition:transform .45s ease;
}
.xfg-hcaptcha-badge[data-expanded="true"] { transform:translateX(0); }
.gear-shop-page .xfg-hcaptcha-badge__toggle,
.xfg-hcaptcha-badge__toggle {
    display:grid;
    place-items:center;
    flex:0 0 56px;
    width:56px;
    height:55px;
    min-width:56px;
    min-height:55px;
    margin:0;
    padding:0 6px;
    border:0;
    border-radius:12px 0 0 12px;
    background:#fff;
    color:#333;
    cursor:pointer;
}
.xfg-hcaptcha-badge__toggle img { display:block; width:44px; height:44px; margin:0; }
.xfg-hcaptcha-badge__details {
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    gap:4px;
    min-width:167px;
    max-width:calc(100vw - 68px);
    height:55px;
    padding:4px 12px;
    background:#007a8a;
    color:#fff;
    letter-spacing:.6px;
}
.xfg-hcaptcha-badge__label { display:block; font:600 12px/12px Arial,sans-serif; white-space:nowrap; }
.xfg-hcaptcha-badge__links { display:block; margin:0; white-space:nowrap; font:300 10px/10px Arial,sans-serif; }
.gear-shop-page .xfg-hcaptcha-badge a,
.xfg-hcaptcha-badge a { color:#fff; text-decoration:none; }
.xfg-hcaptcha-badge a:hover { text-decoration:underline; }
.xfg-hcaptcha-badge a:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.xfg-hcaptcha-badge button:focus-visible { outline:2px solid #007a8a; outline-offset:-3px; }
.xfg-hcaptcha-disclosure {
    display:block;
    flex-basis:100%;
    width:100%;
    margin:12px 0 0;
    color:inherit;
    font:400 11px/1.5 var(--shop-text,Arial,sans-serif);
    text-align:left;
}
.gear-shop-page .xfg-hcaptcha-disclosure a,
.xfg-hcaptcha-disclosure a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
.xfg-hcaptcha-host { width:0; height:0; }
/* Reserve the bottom corner for the badge, including when the panel scrolls. */
.xfg-newsletter-popup { max-height:calc(100dvh - 101px - var(--xfg-cookie-notice-height, 0px) - env(safe-area-inset-bottom, 0px)); }
/* Keep Escape and incidental pointer input on the active provider challenge. */
.xfg-hcaptcha-challenging :is(.xfg-newsletter-popup, .xfg-newsletter-launcher, .xfg-hcaptcha-badge) { pointer-events:none; }
@media(max-width:600px) {
    .xfg-newsletter-popup {
        bottom:calc(85px + var(--xfg-cookie-notice-height, 0px) + env(safe-area-inset-bottom, 0px));
        max-height:calc(100dvh - 97px - var(--xfg-cookie-notice-height, 0px) - env(safe-area-inset-bottom, 0px));
    }
}
@media(prefers-reduced-motion:reduce) { .xfg-hcaptcha-badge { transition:none; } }
