/* Toasts – CORE Solution */
:root{
  --toast-radius: 14px;
  --toast-shadow: 0 10px 30px rgba(0,0,0,.35);
  --toast-bg: #0f172a;       /* base */
  --toast-info: #22d3ee;     /* ciano */
  --toast-ok: #10b981;       /* verde */
  --toast-warn: #f59e0b;     /* âmbar */
  --toast-err: #ef4444;      /* vermelho */
  --toast-fg: #e2e8f0;       /* texto */
}

#toast-stack{
  position: fixed;
  right: 16px;
  top: 16px;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: none; /* só os toasts recebem clique */
}

.toast{
  min-width: 260px;
  max-width: min(420px, 86vw);
  color: var(--toast-fg);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.12);
  border-left: 6px solid var(--toast-info);
  border-radius: var(--toast-radius);
  box-shadow: var(--toast-shadow);
  padding: 12px 44px 12px 14px;
  transform: translateY(-8px);
  opacity: 0;
  transition: transform .25s ease, opacity .25s ease, filter .25s ease;
  pointer-events: auto;
  position: relative;
}
.toast.in{ transform: translateY(0); opacity: 1; }
.toast .t-msg{ display:block; line-height:1.35; font-weight:600; }
.toast .t-x{
  position:absolute; right:8px; top:6px;
  border:0; background:transparent; color:inherit; font-size:18px; cursor:pointer;
  width:28px; height:28px; border-radius:50%;
}
.toast .t-x:hover{ filter: brightness(1.25); }

.toast-info  { border-left-color: var(--toast-info); }
.toast-success{ border-left-color: var(--toast-ok); }
.toast-warning{ border-left-color: var(--toast-warn); }
.toast-error { border-left-color: var(--toast-err); }
