/* Тост дельты после ответа в повторении. */

.aid-holder {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 9998;
  display: grid;
  gap: 8px;
  width: min(320px, calc(100vw - 32px));
  pointer-events: none;
}
@media (max-width: 768px) {
  /* На мобиле снизу живёт таббар кабинета — поднимаем тост над ним. */
  .aid-holder { left: 50%; transform: translateX(-50%); bottom: 78px; }
}

.aid-toast {
  pointer-events: auto;
  background: var(--surface, #fff);
  border: 1px solid var(--border, rgba(0,0,0,.08));
  border-left: 3px solid #4338ca;
  border-radius: var(--radius-sm, 10px);
  padding: 11px 13px;
  box-shadow: 0 12px 32px rgba(0,0,0,.12), 0 2px 8px rgba(0,0,0,.06);
  display: grid;
  gap: 4px;
  animation: aid-in .4s cubic-bezier(.22,.8,.28,1);
}
.aid-toast.is-warn { border-left-color: #b45309; }
.aid-toast.is-out { animation: aid-out .3s forwards; }

.aid-title {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text, #1e293b);
}
.aid-sig { width: 6px; height: 6px; border-radius: 50%; background: #4338ca; flex: none; }
.aid-toast.is-warn .aid-sig { background: #b45309; }

.aid-body {
  font-size: 0.8125rem;
  color: var(--text-secondary, #4a5568);
  line-height: 1.45;
}
.aid-body b {
  color: var(--text, #1e293b);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

@keyframes aid-in  { from { opacity: 0; transform: translateY(10px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes aid-out { to { opacity: 0; transform: translateY(6px) scale(.98); } }

@media (prefers-reduced-motion: reduce) {
  .aid-toast { animation: none !important; }
}
