/* AEEC Web App Styles */

/* Base Styles */
body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Print Styles for PDF Generation */
@media print {
  body {
    background: white;
  }
  
  nav, footer {
    display: none;
  }
  
  .no-print {
    display: none;
  }
  
  @page {
    size: A4 portrait;
    margin: 20mm;
  }
  
  .print-break-before {
    break-before: page;
  }
  
  .print-break-after {
    break-after: page;
  }
  
  .print-break-inside-avoid {
    break-inside: avoid;
  }
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* Table Styles */
table {
  border-collapse: collapse;
}

/* Loading Animation */
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.animate-spin {
  animation: spin 1s linear infinite;
}

/* Transitions */
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

/* Focus States */
button:focus,
a:focus {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}

/* Print-friendly colors */
@media print {
  .text-blue-600 {
    color: #000 !important;
  }
  
  .bg-blue-600 {
    background-color: #f3f4f6 !important;
    color: #000 !important;
  }
  
  .shadow-sm,
  .shadow-md,
  .shadow-lg {
    box-shadow: none !important;
  }
}
