/* ========================================================================== Language suggestion banner (browser-language based, dismissible) ========================================================================== */ .lang-suggest { position: fixed; left: 50%; bottom: 22px; transform: translate(-50%, 24px); z-index: 1200; display: flex; align-items: center; gap: 12px; max-width: calc(100% - 32px); padding: 12px 12px 12px 16px; background: #FFFFFF; border: 1px solid #EAECF0; border-radius: 12px; box-shadow: 0 14px 40px rgba(16, 24, 40, 0.18); font-size: 14px; line-height: 1.4; color: #344054; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s; } .lang-suggest.is-visible { opacity: 1; visibility: visible; transform: translate(-50%, 0); } .lang-suggest-text { margin: 0; } .lang-suggest-btn { flex-shrink: 0; background: #2D738C; color: #FFFFFF; text-decoration: none; padding: 8px 14px; border-radius: 8px; font-weight: 600; white-space: nowrap; } .lang-suggest-btn:hover { background: #255E73; } .lang-suggest-close { flex-shrink: 0; background: none; border: none; font-size: 22px; line-height: 1; color: #98A2B3; cursor: pointer; padding: 0 4px; } .lang-suggest-close:hover { color: #475467; } @media (max-width: 560px) { .lang-suggest { left: 16px; right: 16px; /* The Ask-MSOS pill now hides while this banner is up (see assistant.js), so the banner can sit at the bottom without colliding with it. */ bottom: 16px; transform: translateY(24px); flex-wrap: wrap; } .lang-suggest.is-visible { transform: translateY(0); } .lang-suggest-text { flex: 1 1 100%; order: 1; } .lang-suggest-btn { order: 2; } .lang-suggest-close { order: 3; margin-left: auto; } }