/* === ACCESSIBILITY ENHANCEMENTS === */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .progress-fill { transition: width 0.5s ease; }
}

.visually-hidden:not(:focus):not(:active) {
  position: absolute; width: 1px; height: 1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap;
}

.emoji { font-size: 1.2em; }

input[type="checkbox"] { width: 20px; height: 20px; cursor: pointer; }

[aria-disabled="true"] { opacity: 0.5; pointer-events: none; }

[role="alert"] { font-weight: 600; padding: var(--spacing-md); border-radius: var(--radius-sm); }

@media print { .sidebar { display: none; } .main-content { margin-left: 0; } }
