/* AST009: spazio stabile dal primo paint, anche senza JS/invito o dopo chiusura.
 * Caricare nel head senza defer: l’inserimento assoluto non modifica il flusso. */
#siteFooter {
    --siteops-language-invite-reserved: 1;
    --siteops-language-invite-slot: calc(80px + env(safe-area-inset-bottom, 0px));
    position: relative;
    content-visibility: visible;
    contain-intrinsic-size: none;
}
#siteFooter::after {
    content: '';
    display: block;
    height: var(--siteops-language-invite-slot);
    pointer-events: none;
}
#siteFooter > #siteops-language-invite {
    position: absolute;
    left: max(20px, env(safe-area-inset-left, 0px));
    bottom: calc(30px + env(safe-area-inset-bottom, 0px));
    width: max-content;
    max-width: calc(100% - max(20px, env(safe-area-inset-left, 0px)) - max(88px, env(safe-area-inset-right, 0px)));
    height: 64px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px;
    border: 1px solid currentColor;
    border-radius: 6px;
    background: var(--color-primary, #1a1a1a);
    color: var(--color-light, #fff);
    font: inherit;
    line-height: 1.3;
    visibility: hidden;
    pointer-events: none;
    overflow: visible;
    z-index: 1;
    /* Nessun fixed/sticky, animazione o transizione: CTA e testo non si spostano. */
}
#siteops-language-invite > a,
#siteops-language-invite > button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 44px;
    min-height: 44px;
    padding: 0 8px;
    margin: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    line-height: 1.3;
    border: 0;
    border-radius: 4px;
    flex-shrink: 0;
    white-space: nowrap;
}
#siteops-language-invite > a { text-decoration: underline; text-underline-offset: 3px; }
#siteops-language-invite > button { cursor: pointer; }
#siteops-language-invite > a:focus-visible,
#siteops-language-invite > button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
@media print {
    #siteFooter::after, #siteFooter > #siteops-language-invite { display: none; }
}
