/* Security UI — lockout, session badge, toast */

.admin-lockout-banner {
  background: #ffebee;
  color: #c62828;
  border: 1px solid #ef9a9a;
  border-radius: 12px;
  padding: 12px 16px;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  margin-bottom: 16px;
  text-align: center;
}

.admin-session-expired-banner {
  background: #fff8e1;
  color: #f57f17;
  border-color: #ffe082;
}

.admin-session-badge {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  color: #6b6b6b;
  background: #f5f4f0;
  padding: 6px 12px;
  border-radius: 100px;
  white-space: nowrap;
}

.admin-toast {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 10003;
  background: #2e7d32;
  color: #fff;
  padding: 14px 20px;
  border-radius: 12px;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 500;
  box-shadow: 0 8px 24px rgba(46, 125, 50, 0.35);
  animation: admin-toast-in 0.35s ease;
}

.admin-toast-success {
  background: #2e7d32;
  box-shadow: 0 8px 24px rgba(46, 125, 50, 0.35);
}

.admin-toast-error {
  background: #c62828;
  box-shadow: 0 8px 24px rgba(198, 40, 40, 0.35);
}

@keyframes admin-toast-in {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 768px) {
  .admin-session-badge {
    display: none;
  }

  .admin-toast {
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
}
