/* Convite de instalação do app (usado no site e na plataforma). */
.fi-aviso { position: fixed; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); z-index: 90; display: flex; align-items: center; gap: 12px; padding: 12px 12px 12px 14px; background: #fff; color: #10231B; border-radius: 22px; box-shadow: 0 18px 50px rgba(8, 40, 28, .3); border: 2px solid #E6F3EC; font-family: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif; animation: fi-sobe .35s ease-out both; max-width: 560px; margin-inline: auto; }
.fi-aviso img { width: 52px; height: 52px; border-radius: 14px; flex: none; }
.fi-aviso-texto { display: grid; flex: 1; min-width: 0; line-height: 1.25; }
.fi-aviso-texto b { font-size: 1.02rem; }
.fi-aviso-texto span { font-size: .86rem; color: #3B4A43; }
.fi-btn { min-height: 48px; padding: 10px 20px; border-radius: 999px; border: 0; font: inherit; font-weight: 800; font-size: 1rem; cursor: pointer; }
.fi-btn-sol { background: #145C43; color: #FBF3DF; box-shadow: 0 4px 0 #0C3B2B; }
.fi-btn-verde { background: #145C43; color: #FBF3DF; box-shadow: 0 5px 0 #0C3B2B; width: 100%; min-height: 56px; font-size: 1.1rem; }
.fi-fechar { width: 40px; height: 40px; flex: none; border: 0; border-radius: 50%; background: #F1F5F3; color: #3B4A43; font-size: 1rem; cursor: pointer; }
.fi-btn:focus-visible, .fi-fechar:focus-visible { outline: 3px solid #D9CBA6; outline-offset: 2px; }
.fi-fundo { position: fixed; inset: 0; z-index: 100; display: grid; place-items: end center; background: rgba(7, 31, 22, .55); padding: 16px 12px calc(16px + env(safe-area-inset-bottom)); }
.fi-modal { width: min(460px, 100%); background: #fff; color: #10231B; border-radius: 28px; padding: 26px 22px 22px; text-align: center; font-family: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif; animation: fi-sobe .3s ease-out both; }
.fi-modal-icone { width: 72px; height: 72px; border-radius: 20px; margin: 0 auto 10px; }
.fi-modal h2 { margin: 0 0 4px; font-size: 1.4rem; line-height: 1.2; }
.fi-modal > p { margin: 0 0 16px; color: #3B4A43; }
.fi-passos { list-style: none; margin: 0 0 20px; padding: 0; display: grid; gap: 10px; text-align: left; }
.fi-passos li { display: flex; align-items: center; gap: 12px; background: #FBF3DF; border-radius: 18px; padding: 12px 14px; font-size: 1rem; line-height: 1.35; }
.fi-num { flex: none; width: 34px; height: 34px; border-radius: 50%; background: #145C43; color: #FBF3DF; font-weight: 900; display: grid; place-items: center; }
.fi-icone { display: inline-grid; place-items: center; vertical-align: middle; width: 30px; height: 30px; border-radius: 8px; background: #E6F3EC; color: #145C43; font-style: normal; font-weight: 800; margin-left: 2px; }
.fi-toast { position: fixed; left: 50%; bottom: calc(20px + env(safe-area-inset-bottom)); transform: translateX(-50%); z-index: 110; background: #145C43; color: #fff; padding: 14px 20px; border-radius: 16px; font-weight: 700; box-shadow: 0 12px 30px rgba(0, 0, 0, .25); font-family: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif; width: max-content; max-width: calc(100% - 24px); text-align: center; }
@keyframes fi-sobe { from { transform: translateY(30px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .fi-aviso, .fi-modal { animation: none; } }
@media (max-width: 360px) { .fi-aviso-texto span { display: none; } }
