/* Main CSS - Non-critical styles loaded after page render */

/* Additional animations */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.fade-in {
  animation: fadeIn 0.3s ease-in;
}

/* Print styles */
@media print {
  .header, .footer, .nav, .sidebar {
    display: none;
  }
  
  .word-layout {
    grid-template-columns: 1fr;
  }
  
  body {
    font-size: 12pt;
  }
}

/* Accessibility improvements */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* Focus styles for keyboard navigation */
a:focus, button:focus {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

/* Smooth scroll */
html {
  scroll-behavior: smooth;
}
