/* Notification Container - style.css'den */
.notification-container {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 10000;
  display: flex;
  flex-direction: column-reverse;
  gap: 12px;
}

.notification {
  background: #ffffff;
  padding: 1rem 1.75rem;
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
  margin-bottom: 0.75rem;
  opacity: 0;
  transform: translateX(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  max-width: 320px;
  font-size: 0.9rem;
}

.notification.success {
  border-left: 4px solid #10b981;
  color: #065f46;
}

.notification.error {
  border-left: 4px solid #ef4444;
  color: #991b1b;
}

.notification.show {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.notification.hide {
  opacity: 0;
  transform: translateY(20px) scale(0.95);
}

.notification .close-btn {
  margin-left: auto;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 0.2s;
}

.notification .close-btn:hover {
  opacity: 1;
}
/* Responsive Adjustments - Mobile (max-width: 768px) */
@media (max-width: 768px) {
  /* Tables Grid */
  .tables-grid {
    grid-template-columns: 1fr; /* Single column for mobile */
    gap: 1.5rem;
    padding: 0.8rem;
    margin: 1.5rem auto;
    max-width: 100%;
  }

  /* Table Card */
  .table-card {
    padding: 1rem;
    border-radius: calc(var(--radius) * 0.6); /* Smaller radius */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transform: translateY(0); /* Reset 3D transform for mobile */
  }

  .table-card:hover {
    transform: translateY(-2px); /* Reduced hover effect */
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
  }

  .table-card::before {
    background: rgba(255, 255, 255, 0.05); /* Lighter glass effect */
  }

  .table-header {
    font-size: 1.4rem;
    gap: 8px;
  }

  .table-meta {
    font-size: 0.85rem;
    padding-top: 0.8rem;
  }

  .icon {
    width: 20px;
    height: 20px;
  }

  /* Notification */
  .notification-container {
    bottom: 1rem;
    right: 1rem;
  }

  .notification {
    max-width: 90%;
    padding: 0.7rem 1rem;
    font-size: 0.8rem;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    margin-bottom: 0.5rem;
  }

  .notification .close-btn {
    font-size: 0.9rem;
  }

  /* Modal */
  .modal-content {
    max-width: 95%;
    padding: 1rem;
    border-radius: 10px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
  }

  .modal-header {
    padding-bottom: 0.8rem;
  }

  .modal-header h2 {
    font-size: 1.4rem;
  }

  .modal-body {
    padding: 0.8rem 0;
    font-size: 0.9rem;
  }

  .modal-footer {
    padding-top: 0.8rem;
    gap: 0.6rem;
  }

  .close-btn {
    font-size: 1.2rem;
  }

  /* Buttons */
  .btn {
    font-size: 0.85rem;
    padding: 0.6rem 1rem;
    width: 100%; /* Full-width buttons */
    border-radius: 8px;
  }

  .btn:hover,
  .btn:focus {
    transform: translateY(-1px);
  }

  .btn-green,
  .btn-red,
  .btn-blue,
  .btn-gray {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }

  /* Order Grid */
  .order-grid {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 8px;
    margin-top: 8px;
  }

  /* Order Item */
  .order-item {
    padding: 8px;
    font-size: 0.85rem;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  }

  .order-item:hover,
  .order-item:focus {
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
  }

  /* Orders Table */
  #ordersList {
    font-size: 0.85rem;
    max-height: 200px; /* Reduced height for mobile */
    border-radius: 6px;
  }

  #ordersList th,
  #ordersList td {
    padding: 8px;
  }

  #noOrdersMessage {
    font-size: 0.9rem;
    padding: 1rem;
  }

  /* Action Controls */
  .action-controls {
    gap: 4px;
  }

  .action-controls button {
    width: 30px;
    height: 30px;
    font-size: 0.9rem;
    border-radius: 6px;
  }

  .action-controls button:hover,
  .action-controls button:focus {
    transform: translateY(-1px);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  }

  /* Form Elements */
  select,
  input[type="number"],
  input[type="time"] {
    padding: 8px;
    font-size: 0.9rem;
    border-radius: 6px;
  }

  label {
    font-size: 0.9rem;
  }

  /* Specific Modal Footers */
  #infoModal .modal-footer,
  #extendModal .modal-footer,
  #timePickerModal .modal-footer {
    flex-direction: column;
    gap: 0.6rem;
    padding: 0.8rem;
  }

  #infoModal .btn,
  #extendModal .btn,
  #timePickerModal .btn {
    padding: 0.6rem 1rem;
    font-size: 0.85rem;
  }

  #timePickerModal input[type="time"] {
    font-size: 0.85rem;
    padding: 0.4rem;
  }

  /* Payment Modal */
  #paymentModal .modal-body p {
    font-size: 0.9rem;
  }

  #paymentModal .modal-body select,
  #paymentModal .modal-body input[type="number"] {
    padding: 6px;
    font-size: 0.85rem;
  }

  /* Status Badge */
  .status-badge {
    font-size: 0.8rem;
    padding: 5px 10px;
  }

  /* Progress Bar */
  .progress-bar {
    height: 6px;
  }

  /* Action Menu */
  .action-menu {
    padding: 4px;
    top: 12px;
    right: 12px;
  }
}
