/* ============================================================
   MOBILE BASE — Global mobile utilities & touch optimizations
   Loaded app-wide via master.blade.php
   Uses design tokens from wc-tokens.css
   ============================================================ */

/* --- Touch Target Minimums (WCAG 2.5.8) --- */@media (max-width:768px){
  /* All interactive elements: 44px minimum touch target */.btn,.form-check-input,.form-select,[role=button],a.btn,button,input[type=button],input[type=submit]{min-height:44px}

  /* Pagination buttons (were 26px) */.est-page-btn,.page-link,.paginate_button{align-items:center;display:inline-flex;justify-content:center;min-height:44px;min-width:44px}

  /* Filter pills */.est-filter-pill,.est-m-pill{min-height:40px;padding:8px 14px}

  /* Action icon buttons */.btn-icon,.btn-sm,[class*=btn-light-]{min-height:44px;min-width:44px}

  /* Adequate spacing between adjacent touch targets */.btn+.btn,.btn-group>.btn+.btn{margin-left:8px}

  /* Form inputs: 48px height prevents iOS zoom (requires ≥16px font) */.form-control,.form-select,input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],textarea{font-size:16px; /* Prevents iOS auto-zoom on focus */min-height:48px}}

/* --- Safe Area Insets (notch devices) --- */@supports (padding:max(0px)){@media (max-width:768px){
    /* Sticky/fixed bottom elements */.est-d-actions,.mobile-bottom-nav,.position-fixed[style*=bottom],.ps-running-total,.wiz-footer,[class*=sticky-bottom]{padding-bottom:max(12px,env(safe-area-inset-bottom))}

    /* Top elements (status bar) */.m-topbar,.mobile-top-bar{padding-top:max(12px,env(safe-area-inset-top))}}}

/* --- Responsive Typography --- */@media (max-width:768px){
  /* Scale down oversized headings */.h1,h1{font-size:1.5rem}.h2,h2{font-size:1.25rem}.h3,h3{font-size:1.125rem}

  /* Readable body text */body{font-size:15px;line-height:1.5}

  /* Prevent horizontal overflow from wide content */#kt_app_content_container,.app-container,.app-content{overflow-x:hidden;padding-left:12px;padding-right:12px}}

/* --- Hide Desktop Sidebar on Mobile, Show Bottom Nav --- */@media (max-width:991.98px){
  /* Bottom nav is visible */.mobile-bottom-nav{display:flex}

  /* Add padding to main content so it doesn't hide behind bottom nav */.app-main{padding-bottom:72px}}@media (min-width:992px){
  /* Hide bottom nav on desktop */.mobile-bottom-nav{display:none!important}}

/* --- Scroll Improvements --- */@media (max-width:768px){
  /* Momentum scrolling for overflow containers */.table-responsive,[class*=scroll],[style*=overflow-x]{-webkit-overflow-scrolling:touch}

  /* Hide scrollbars but keep functionality */.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.mobile-card-table thead{display:none}.mobile-card-table tbody tr{border-bottom:1px solid var(--border-subtle,#e4e4e7);display:block;margin-bottom:0;padding:14px 16px}.mobile-card-table tbody td{align-items:center;border:none;display:flex;font-size:14px;justify-content:space-between;padding:4px 0}.mobile-card-table tbody td:before{color:var(--text-muted,#71717a);content:attr(data-label);flex-shrink:0;font-size:12px;font-weight:600;letter-spacing:.3px;margin-right:16px;text-transform:uppercase}.mobile-card-table td.hide-mobile,.mobile-card-table th.hide-mobile{display:none!important}.modal-dialog{margin:0;max-width:100%;min-height:100vh}.modal-content{border-radius:0;min-height:100vh}.modal-body{padding:16px}.cursor-pointer,[role=button],a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}}

/* --- DataTable Mobile Card Layout --- */@media (max-width:768px){
  /* Tables that should collapse to cards on mobile */

  /* Hide low-priority columns on mobile */}

/* --- Modal Mobile Fullscreen --- */

/* --- Utility: Tap Highlight --- */

/* --- Bottom Nav Content Padding ---
   Prevent bottom navigation from covering page content.
   Only applies when bottom nav is visible (< 992px). */@media (max-width:991px){#kt_app_main{padding-bottom:72px}}
