/* ==========================================================================
   QR ASSET ID — MASTER RESPONSIVE STYLESHEET
   Supports Desktop, Laptop, Tablet, and Mobile Smartphones
   ========================================================================== */

/* ===== Desktop & Laptop Fine-tuning (max-width: 1200px) ===== */
@media (max-width: 1200px) {
  .maroon-search-wrapper {
    flex: 1 1 220px;
  }
}

/* ===== Large Tablets & Small Laptops (max-width: 1024px) ===== */
@media (max-width: 1024px) {
  .login-sidebar {
    display: none !important;
  }
  .login-content {
    flex: 1 1 100%;
  }
  .form-grid-2x2 {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .stats-grid, .maroon-stats-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  .charts-grid {
    grid-template-columns: 1fr !important;
  }
  .qr-manage-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

/* ===== Medium Tablets & iPad Portrait (max-width: 900px) ===== */
@media (max-width: 900px) {
  /* Top Nav Header */
  .top-nav {
    padding: 10px 16px !important;
  }
  .top-nav-left .nav-title {
    font-size: 13px !important;
    max-width: 220px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* Navigation Tabs (Scrollable Bar) */
  .maroon-main-nav-wrapper {
    padding: 0 12px !important;
    margin-top: 12px !important;
  }
  .maroon-main-nav {
    display: flex !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap !important;
    justify-content: flex-start !important;
    padding: 4px !important;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .maroon-main-nav::-webkit-scrollbar {
    display: none;
  }
  .nav-tab {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    padding: 10px 14px !important;
    font-size: 12px !important;
  }

  /* Dashboard Maroon Card Transformation */
  .maroon-header-row {
    flex-wrap: wrap !important;
  }
  .maroon-header-tab {
    flex: 1 1 calc(50% - 1px) !important;
    border-bottom: 1px solid var(--maroon-border) !important;
    padding: 10px 6px !important;
    font-size: 11px !important;
  }

  .maroon-row {
    flex-direction: column !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
  }
  .col-title, .col-qty, .col-val, .col-action {
    width: 100% !important;
    border-right: none !important;
    border-bottom: 1px solid var(--maroon-border) !important;
  }
  .col-action {
    border-bottom: none !important;
  }

  .col-title {
    padding: 12px 16px !important;
    background: #FDF2F2 !important;
    text-align: center !important;
  }
  .col-title h3 {
    margin-bottom: 0 !important;
    font-size: 14px !important;
  }
  .col-title .qty-subbtn-pill {
    display: none !important; /* Hide redundant button in title card header */
  }

  .qty-header, .val-header, .action-header {
    font-size: 11px !important;
    padding: 8px 12px !important;
    background: #FAF5F5 !important;
  }

  .qty-body {
    display: flex !important;
    flex-direction: row !important;
    width: 100% !important;
  }
  .qty-item {
    width: 33.333% !important;
    padding: 10px 4px !important;
    border-right: 1px solid var(--maroon-border) !important;
  }
  .qty-item:last-child {
    border-right: none !important;
  }
  .qty-label {
    font-size: 10px !important;
    margin-bottom: 4px !important;
    white-space: nowrap !important;
  }
  .qty-value-big {
    font-size: 22px !important;
    margin-bottom: 4px !important;
  }
  .qty-subbtn-pill, .qty-value-pill {
    font-size: 10px !important;
    height: 28px !important;
    padding: 0 8px !important;
    width: 95% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .val-body {
    padding: 12px !important;
    text-align: center !important;
  }
  .val-value-big {
    font-size: 22px !important;
    margin-bottom: 8px !important;
    word-break: break-all !important;
    overflow-wrap: break-word !important;
    max-width: 100% !important;
  }

  .action-body {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    padding: 10px !important;
    gap: 8px !important;
  }
  .action-btn-row {
    flex: 1 1 calc(50% - 4px) !important;
    border-right: none !important;
    border-bottom: none !important;
    padding: 0 !important;
  }
}

/* ===== Standard Mobile Devices & iPhone (max-width: 768px) ===== */
@media (max-width: 768px) {
  /* Top Header */
  .top-nav {
    padding: 8px 12px !important;
  }
  .top-nav-left {
    gap: 8px !important;
  }
  .top-nav-left img.logo-icon {
    height: 20px !important;
  }
  .top-nav-left .nav-title {
    font-size: 11px !important;
    max-width: 150px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .top-nav-right {
    gap: 10px !important;
  }
  .user-info {
    display: none !important; /* Hide text on small screens, show avatar only */
  }

  .tab-content {
    padding: 12px 10px !important;
  }

  /* Filter & Search Bar */
  .maroon-filter-bar, .filter-bar {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }
  .maroon-search-wrapper, .search-wrapper {
    width: 100% !important;
    flex: 1 1 100% !important;
  }
  .maroon-filter-select, .filter-select {
    width: 100% !important;
    min-width: 100% !important;
  }
  .filter-actions, .maroon-filter-actions {
    display: flex !important;
    gap: 8px !important;
    width: 100% !important;
  }
  .filter-actions button, .maroon-filter-actions button {
    flex: 1 !important;
    justify-content: center !important;
  }

  /* Data Table Horizontal Scroll Container */
  .maroon-table-card, .table-card {
    border-radius: 8px;
    margin-bottom: 14px;
    overflow: hidden;
  }
  .maroon-table-responsive, .table-responsive {
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  .maroon-data-table, .data-table {
    min-width: 680px !important; /* Ensures table headers & columns fit cleanly with horizontal scroll */
  }
  .maroon-data-table th, .maroon-data-table td, .data-table th, .data-table td {
    padding: 10px 6px !important;
    font-size: 11px !important;
  }

  /* Forms & Panels */
  .form-row {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .form-card-panel {
    padding: 14px !important;
  }
  .form-group label {
    font-size: 12px !important;
  }
  .form-group input, .form-group select, .form-group textarea {
    font-size: 13px !important;
    min-height: 42px !important;
  }

  /* Modal Popups */
  .modal {
    padding: 8px !important;
    align-items: center !important;
  }
  .modal-content, .edit-modal-content {
    width: 98% !important;
    max-width: 100% !important;
    max-height: 94vh !important;
    margin: auto !important;
    border-radius: 12px !important;
  }
  .modal-header, .edit-modal-header {
    padding: 12px 14px !important;
  }
  .modal-body, .edit-modal-body {
    padding: 12px 14px !important;
    max-height: calc(94vh - 65px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  .edit-modal-actions, .modal-actions {
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
  }
  .edit-modal-actions button, .modal-actions button {
    width: 100% !important;
    margin: 0 !important;
  }

  /* QR Batches Cards */
  .batch-card {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 14px !important;
  }
  .batch-info {
    width: 100% !important;
  }
  .batch-stats {
    width: 100% !important;
    justify-content: space-between !important;
  }
  .batch-actions {
    width: 100% !important;
    display: flex !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
  }
  .batch-actions button {
    flex: 1 1 calc(50% - 4px) !important;
    justify-content: center !important;
    font-size: 11px !important;
    padding: 6px 4px !important;
  }

  /* Scanner Component */
  .qr-camera-box-wrapper, .scan-container {
    width: 100% !important;
    max-width: 100% !important;
  }
  .qr-camera-box, #qrReader {
    width: 100% !important;
    max-width: 540px !important;
    margin: 0 auto 14px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
  }
  .btn-scan-start, .btn-scan-stop {
    width: 100% !important;
    height: 44px !important;
  }
}

/* ===== Small Mobile Devices / Narrow Smartphones (max-width: 480px) ===== */
@media (max-width: 480px) {
  .qty-body {
    flex-direction: column !important;
  }
  .qty-item {
    width: 100% !important;
    border-right: none !important;
    border-bottom: 1px solid var(--maroon-border) !important;
    padding: 10px 4px !important;
  }
  .qty-item:last-child {
    border-bottom: none !important;
  }

  .qty-value-big {
    font-size: 24px !important;
  }
  .val-value-big {
    font-size: 18px !important;
    font-weight: 800 !important;
  }
  .qty-subbtn-pill, .qty-value-pill {
    width: 80% !important;
    font-size: 10px !important;
  }

  .result-grid-6 {
    grid-template-columns: 1fr !important;
  }
  #detailDynamicContainer, #edit_dynamicFieldsContainer {
    grid-template-columns: 1fr !important;
  }
  .maroon-pagination {
    justify-content: center !important;
    width: 100% !important;
  }
  .batch-actions button {
    flex: 1 1 100% !important;
  }
}