/* responsive.css - Tối ưu hiển thị trên Tablet và Điện thoại */
@media (max-width: 1100px) {
  .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .dashboard-two-col,
  .config-grid,
  .workspace-layout,
  .charts-row {
    grid-template-columns: 1fr;
  }
  .nav-palette-card {
    position: sticky;
    bottom: 0.5rem;
    top: auto;
    max-height: 220px;
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-200);
  }
}
@media (max-width: 820px) {
  .sidebar {
    transform: translateX(-100%);
  }
  .sidebar.open {
    transform: translateX(0);
  }
  .sidebar-backdrop.open {
    display: block;
  }
  .main-wrapper {
    margin-left: 0;
  }
  .mobile-menu-btn {
    display: inline-flex;
  }
  .results-hero {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
  }
  .hero-banner {
    flex-direction: column;
    align-items: flex-start;
    padding: 1.35rem;
  }
  .header-progress-pill {
    display: none;
  }
  .passage-container {
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    overflow-y: visible !important;
    padding: 0.9rem 1rem 1rem;
  }
}
@media (max-width: 520px) {
  .stats-grid {
    grid-template-columns: 1fr;
  }
  .main-content {
    padding: 1rem;
  }
  .palette-grid {
    grid-template-columns: repeat(6, 1fr);
  }
  .option-btn {
    padding: 0.8rem 0.9rem;
  }
  .passage-header {
    padding: 0 0 0.55rem;
  }
}
