@media (max-width: 1200px) {
  .receipt-browser-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1100px) {
  .metric-card-grid,
  .settings-grid,
  .search-filters-grid,
  .receipt-card-grid,
  .receipt-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .upload-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .hero-feature-grid {
    grid-template-columns: 1fr;
  }

  .hero-panel {
    padding: 24px;
  }

  .application-shell {
    grid-template-columns: 1fr;
  }

  .application-sidebar {
    border-right: 0;
    border-bottom: 1px solid rgba(145, 197, 255, 0.08);
  }

  .application-topbar {
    flex-direction: column;
  }

  .upload-preview-item,
  .receipt-line-item-row,
  .receipt-detail-hero {
    flex-direction: column;
    align-items: stretch;
  }

  .receipt-detail-total-block {
    text-align: left;
  }
}

@media (max-width: 640px) {
  .metric-card-grid,
  .settings-grid,
  .search-filters-grid,
  .receipt-card-grid,
  .receipt-detail-grid {
    grid-template-columns: 1fr;
  }

  .application-main,
  .application-sidebar,
  .page-outlet {
    padding: 18px;
  }

  .receipt-card-row {
    flex-direction: column;
  }

  .upload-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .primary-button,
  .secondary-button {
    width: 100%;
  }

  .upload-feedback-card-header {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 1000px) {
  .review-editor-layout {
    grid-template-columns: 1fr;
  }

  .review-line-item-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .review-status-banner,
  .review-card-heading {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 700px) {
  .attention-item {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 1100px) {
  .search-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .search-filter-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 800px) {
  .search-toolbar-row {
    grid-template-columns: 1fr;
  }

  .search-clear-button {
    width: 100%;
  }
}