/* PWA Mobile Responsiveness Fixes */

/* PWA Standalone Mode Specific Styles */
@media all and (display-mode: standalone) {
  /* Force mobile layout */
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }
  
  /* Container fixes */
  .container, .wrapper, .navbar, footer, #root {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  
  /* Navigation fixes */
  .navbar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1050 !important;
    background: #fff !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
  }
  
  /* Content spacing */
  #content {
    margin-top: 80px !important;
    padding: 15px 10px !important;
  }
  
  /* Hide desktop elements */
  .desktop-menu, .rightmenu {
    display: none !important;
  }
  
  /* Show mobile elements */
  .mobile-menu {
    display: block !important;
    visibility: visible !important;
  }
  
  /* Mobile grid system */
  .col-md-9, .col-md-12, .col-lg-9, .col-lg-12 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding: 0 10px !important;
  }
  
  /* Mobile buttons */
  .btn {
    font-size: 14px !important;
    padding: 10px 15px !important;
    margin: 5px 0 !important;
    width: auto !important;
    min-width: 120px !important;
  }
  
  /* Mobile forms */
  .form-control {
    font-size: 16px !important;
    padding: 12px !important;
    width: 100% !important;
  }
  
  /* Mobile cards */
  .card, .whitebox {
    margin: 10px 0 !important;
    padding: 15px !important;
    border-radius: 8px !important;
  }
  
  /* Mobile typography */
  h1 { font-size: 24px !important; }
  h2 { font-size: 20px !important; }
  h3 { font-size: 18px !important; }
  h4 { font-size: 16px !important; }
  
  /* Mobile images */
  img {
    max-width: 100% !important;
    height: auto !important;
  }
  
  /* Mobile tables */
  .table-responsive {
    overflow-x: auto !important;
  }
  
  /* Mobile modals */
  .modal-dialog {
    margin: 10px !important;
    max-width: calc(100% - 20px) !important;
  }
  
  /* Mobile footer */
  footer {
    position: relative !important;
    margin-top: 30px !important;
    padding: 20px 10px !important;
  }
}

/* Additional mobile-specific styles for PWA */
.pwa-mode {
  /* Disable text selection and callouts for app-like feel */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.pwa-mode input, .pwa-mode textarea {
  /* Re-enable selection for form inputs */
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

/* PWA Safe Area Support for notched devices */
@supports (padding: max(0px)) {
  .pwa-mode {
    padding-left: max(10px, env(safe-area-inset-left));
    padding-right: max(10px, env(safe-area-inset-right));
  }
  
  .pwa-mode .navbar {
    padding-top: max(10px, env(safe-area-inset-top));
  }
  
  .pwa-mode #content {
    padding-bottom: max(20px, env(safe-area-inset-bottom));
  }
}

/* Force mobile layout on small screens in PWA */
@media screen and (max-width: 768px) {
  .pwa-standalone .container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 15px !important;
  }
  
  .pwa-standalone .row {
    margin: 0 !important;
  }
  
  .pwa-standalone [class*="col-"] {
    padding: 0 10px !important;
  }
}

/* PWA Loading States */
.pwa-mode .preload {
  background: #43c5e6 !important;
}

/* PWA Navigation Improvements */
.pwa-mode .navbar-nav {
  flex-direction: column !important;
  width: 100% !important;
}

.pwa-mode .navbar-nav .nav-item {
  width: 100% !important;
  text-align: center !important;
}

.pwa-mode .navbar-toggler {
  border: none !important;
  padding: 8px !important;
}

/* PWA Content Adjustments */
.pwa-mode .politiqbox,
.pwa-mode .politiqbox-dark {
  margin: 10px 0 !important;
  padding: 15px !important;
}

.pwa-mode .leftcontent {
  margin: 0 !important;
  padding: 0 !important;
}

/* PWA Responsive Images */
.pwa-mode .logo img {
  max-height: 40px !important;
  width: auto !important;
}

/* PWA Mobile Menu Button */
.pwa-mode .button-menu-mobile {
  display: block !important;
  width: 50px !important;
  height: 50px !important;
  background: #43c5e6 !important;
  border: none !important;
  border-radius: 4px !important;
}
