/**
 * dev-wms-mobile.css — Mobile (<768px) Presentation Layer for Neon WMS
 *
 * Implements:
 * - REQ-ColumnFilter-001 v2: Column filter controls hidden on mobile.
 * - REQ-MobileView-001: Asset grid rendered as stacked cards (12px gap),
 *   secondary filter bar collapsed into accordion ("Filters (N active)"),
 *   KPI cards scroll horizontally in single row with snap points.
 * - REQ-MobileView-002: Floor plan modal at 100% width and 85dvh height,
 *   touch scrollable depot SVG floor plan.
 *
 * Strict compliance with brand tokens from dev-styles.css.
 * Mobile Breakpoint: max-width: 767.98px.
 */

/* Desktop defaults: hide mobile-only accordion button and preserve desktop layout */
.wms-mobile-filter-accordion-btn {
  display: none !important;
}

.wms-secondary-filters {
  display: contents !important;
}

/* ==========================================================================
   MOBILE (<768px)
   ========================================================================== */
@media (max-width: 767.98px) {
  /* Navigation Bar Adjustments */
  .wms-nav-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }

  .wms-nav-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .wms-nav-actions .btn-nav-storefront {
    flex: 1 1 calc(50% - 0.25rem);
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    text-align: center;
    font-size: 0.8rem;
  }

  .depot-toggle-btn {
    min-height: 44px;
  }

  /* Header card */
  .wms-header-card {
    padding: 1.25rem 1rem;
  }

  .wms-header-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    margin-top: 1rem;
  }

  .btn-header-floorplan {
    width: 100%;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }

  /* REQ-MobileView-001: Horizontal snap-scrolling KPI summary cards */
  .wms-kpi-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 10px !important;
    padding-bottom: 8px !important;
    margin-bottom: 1rem !important;
    scrollbar-width: none;
  }

  .wms-kpi-grid::-webkit-scrollbar {
    display: none;
  }

  .wms-kpi-card {
    flex: 0 0 190px !important;
    min-width: 190px !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
    padding: 0.85rem !important;
  }

  /* REQ-MobileView-001: Filter Bar & Accordion */
  .wms-filter-bar {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 1rem !important;
  }

  .wms-search-box {
    width: 100% !important;
    min-height: 44px !important;
    box-sizing: border-box !important;
  }

  .wms-search-input {
    min-height: 44px !important;
    font-size: 0.9rem !important;
  }

  .wms-scan-btn {
    min-width: 44px !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .wms-mobile-filter-accordion-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 44px !important;
    background: var(--navy-3) !important;
    border: 1px solid var(--line-dk) !important;
    border-radius: 6px !important;
    padding: 0 14px !important;
    color: var(--paper) !important;
    font-family: var(--sans) !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background-color 0.15s ease;
  }

  .wms-mobile-filter-accordion-btn:hover {
    background: var(--navy) !important;
    border-color: var(--wms-primary) !important;
  }

  .wms-filter-badge {
    font-family: var(--mono) !important;
    font-size: 0.75rem !important;
    color: var(--teal-bright) !important;
    background: var(--navy-2) !important;
    border: 1px solid var(--teal) !important;
    border-radius: 12px !important;
    padding: 2px 8px !important;
  }

  .wms-secondary-filters {
    display: none !important;
    width: 100% !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .wms-secondary-filters.open {
    display: flex !important;
  }

  .wms-secondary-filters select.wms-select,
  .wms-secondary-filters .btn-reset-filters {
    width: 100% !important;
    min-height: 44px !important;
    box-sizing: border-box !important;
    font-size: 0.85rem !important;
  }

  .wms-density-toggle-group {
    display: none !important;
  }

  /* List meta information */
  .wms-list-meta {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
  }

  .btn-clear-zone {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  /* REQ-ColumnFilter-001 v2: Hide column filter UI on mobile */
  .wms-table thead,
  .wms-col-filter-btn,
  .wms-col-filter-popover {
    display: none !important;
  }

  /* REQ-MobileView-001: Asset Grid Stacked Cards (12px gap) */
  .wms-table-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .wms-table {
    display: block !important;
    width: 100% !important;
    border: none !important;
  }

  .wms-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }

  .wms-table tbody tr {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    background: var(--navy-2) !important;
    border: 1px solid var(--line-dk) !important;
    border-radius: 8px !important;
    padding: 14px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    margin-bottom: 0 !important;
  }

  .wms-table tbody td {
    display: block !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
  }

  /* UIN badge */
  .wms-table tbody td:nth-child(1) {
    font-family: var(--mono) !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
    color: var(--teal-bright) !important;
    background: var(--navy-3) !important;
    border: 1px solid var(--teal) !important;
    border-radius: 4px !important;
    padding: 2px 8px !important;
    width: fit-content !important;
    display: inline-block !important;
  }

  /* Item Name */
  .wms-table tbody td:nth-child(2) .wms-col-name-txt {
    font-size: 1.05rem !important;
    font-weight: 800 !important;
    color: var(--paper) !important;
    line-height: 1.35 !important;
  }

  /* Bin Location & SKU: hidden on mobile card view */
  .wms-table tbody td:nth-child(3),
  .wms-table tbody td:nth-child(4) {
    display: none !important;
  }

  /* Category */
  .wms-table tbody td:nth-child(5) {
    font-size: 0.78rem !important;
    color: var(--ink-lt-dim) !important;
  }

  /* Depot pill */
  .wms-table tbody td:nth-child(6) {
    font-family: var(--mono) !important;
    font-size: 0.72rem !important;
    color: var(--paper-2) !important;
    background: var(--navy-3) !important;
    border: 1px solid var(--line-dk-strong) !important;
    border-radius: 4px !important;
    padding: 2px 6px !important;
    width: fit-content !important;
    display: inline-block !important;
  }

  /* Status pill */
  .wms-table tbody td:nth-child(7) {
    width: fit-content !important;
  }

  /* Action Button (View / Manage) */
  .wms-table tbody td:nth-child(8) {
    width: 100% !important;
    margin-top: 6px !important;
  }

  .wms-table tbody td:nth-child(8) .btn-wms-action {
    width: 100% !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
  }

  /* REQ-MobileView-002: Interactive Floor Plan Modal */
  #wmsFloorPlanModal .wms-modal-container {
    width: 100% !important;
    max-width: 100% !important;
    height: 85dvh !important;
    max-height: 85dvh !important;
    margin: auto 0 0 0 !important;
    border-radius: 12px 12px 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  #wmsFloorPlanModal .wms-modal-header {
    padding: 0.85rem 1rem !important;
  }

  .wms-modal-close {
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.5rem !important;
  }

  #wmsFloorPlanModal .wms-modal-body {
    flex: 1 !important;
    min-height: 0 !important;
    padding: 8px !important;
    overflow: hidden !important;
  }

  #wmsFloorPlanContainer {
    width: 100% !important;
    height: 100% !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #wmsFloorPlanContainer .wms-floorplan-svg {
    min-width: 720px !important;
    height: 100% !important;
  }

  /* Back button in detail view */
  .btn-back-wms {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
}
