/* k-toast.css — mensagens rapidas do sistema (item adicionado, erro, informacao).
   Mesma pele da barra fixa de baixo: capsula escura, fundo translucido com desfoque (vidro), borda fina clara.
   Fica no centro, sobe de baixo e some sozinha. Par do js/k-toast.js (o elemento e o #notificacao de cada pagina).
   A posicao vertical vem da variavel --k-toast-base: 22px por padrao; a barra-fixa.css sobe para ficar acima da barra. */

.notificacao { position: fixed; left: 50%; right: auto; top: auto; bottom: calc(var(--k-toast-base, 22px) + var(--k-safe-b, env(safe-area-inset-bottom, 0px)) + var(--cookie-h, 0px));
  z-index: 1300; display: flex; align-items: center; gap: 9px; width: max-content; max-width: min(400px, calc(100vw - 28px)); margin: 0; padding: 8px 16px 8px 9px; box-sizing: border-box;
  border-radius: 20px; border: 1px solid rgba(255, 255, 255, .13); background: rgba(21, 23, 26, .78);
  -webkit-backdrop-filter: saturate(1.6) blur(18px); backdrop-filter: saturate(1.6) blur(18px);
  box-shadow: 0 14px 30px -10px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .09);
  color: #eef1f3; font-size: .82rem; font-weight: 500; line-height: 1.35; text-align: left; word-break: break-word; pointer-events: none;
  opacity: 0; visibility: hidden; transform: translate(-50%, 16px) scale(.97);
  transition: opacity .22s ease, transform .34s cubic-bezier(.2, .8, .2, 1), visibility 0s .34s; }
@supports (color: color-mix(in srgb, red, blue)) { .notificacao { background: color-mix(in srgb, #15171a 78%, transparent); } }
.notificacao.mostrar { opacity: 1; visibility: visible; transform: translate(-50%, 0) scale(1); transition: opacity .22s ease, transform .34s cubic-bezier(.2, .8, .2, 1), visibility 0s; }

/* icone redondo pequeno: a cor diz o tipo (ok / aviso / erro / info) */
.nt-ic { flex: none; width: 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .12); color: #d7dde2; }
.nt-ic svg { width: 14px; height: 14px; }
.nt-ok .nt-ic { background: rgba(45, 159, 163, .32); color: #8fe3e6; }
.nt-aviso .nt-ic { background: rgba(255, 193, 7, .2); color: #ffd45e; }
.nt-erro .nt-ic { background: rgba(255, 92, 92, .2); color: #ff8a8a; }
@supports (color: color-mix(in srgb, red, blue)) {
  .nt-ok .nt-ic { background: color-mix(in srgb, var(--primary-color, #2d9fa3) 34%, transparent); color: color-mix(in srgb, var(--primary-color, #2d9fa3) 55%, #fff); }
}
.nt-txt { min-width: 0; }

@media (prefers-reduced-motion: reduce) { .notificacao, .notificacao.mostrar { transition: opacity .15s ease, visibility 0s; transform: translate(-50%, 0); } }

