/* =========================================
   NOTIFICATIONS & FLASH MESSAGES
   ========================================= */

/* Flash Messages Container */
.flash-container {
  position: fixed;
  top: 80px;
  right: var(--spacing-sm);
  left: var(--spacing-sm);
  z-index: 10000;
}

.flash-messages {
  position: fixed;
  top: 80px;
  right: 20px;
  z-index: 1000;
}

.flash-item {
  background: #2ecc71;
  color: white;
  padding: var(--spacing-md);
  border-radius: 10px;
  margin-bottom: var(--spacing-sm);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  gap: 10px;
  animation: slideIn 0.5s ease-out forwards;
  font-size: 0.9rem;
}

.flash-item.error {
  background: #e74c3c;
}

.flash-item.warning {
  background: #f39c12;
}

/* Alert Styles */
.alert {
  padding: 15px 25px;
  border-radius: 10px;
  margin-bottom: 10px;
  font-weight: 500;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  animation: slideInRight 0.3s ease;
}

.alert-success {
  background-color: #d4edda;
  color: #155724;
  border: 1px solid #c3e6cb;
}

.alert-danger {
  background-color: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
}

.alert-warning {
  background-color: #fff3cd;
  color: #856404;
  border: 1px solid #ffeaa7;
}

@media (min-width: 768px) {
  .flash-container {
    right: var(--spacing-md);
    left: auto;
    max-width: 400px;
  }
}