/* ===== Responsive Dashboard Container ===== */
/* Pure CSS Responsive Dashboard - No JavaScript Needed */
/* ENHANCED VERSION - Fixed Responsive Issues */

.responsive-dashboard-container {
  width: 100%;
  min-height: 100vh;
  position: relative;
  overflow: hidden; /* Prevent layout shifts */
}

/* ===== FORCE RESET ALL DASHBOARD COMPONENTS ===== */
.responsive-dashboard-container .desktop-only,
.responsive-dashboard-container .tablet-only,
.responsive-dashboard-container .mobile-only {
  width: 100% !important;
  position: relative !important;
  transition: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== DEFAULT STATE - DESKTOP ===== */
/* Show desktop by default on all screens */
.responsive-dashboard-container .desktop-only {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.responsive-dashboard-container .tablet-only,
.responsive-dashboard-container .mobile-only {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* ===== TABLET BREAKPOINT ===== */
/* Show tablet only on screens between 768px and 1023px */
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .responsive-dashboard-container .desktop-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  .responsive-dashboard-container .tablet-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .responsive-dashboard-container .mobile-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

/* ===== MOBILE BREAKPOINT ===== */
/* Show mobile only on screens below 768px */
@media screen and (max-width: 767px) {
  .responsive-dashboard-container .desktop-only,
  .responsive-dashboard-container .tablet-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  .responsive-dashboard-container .mobile-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* ===== ADDITIONAL BREAKPOINTS FOR EDGE CASES ===== */
/* Very large screens - ensure desktop shows */
@media screen and (min-width: 1024px) {
  .responsive-dashboard-container .desktop-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .responsive-dashboard-container .tablet-only,
  .responsive-dashboard-container .mobile-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

/* Small tablets - show tablet version */
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .responsive-dashboard-container .desktop-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  .responsive-dashboard-container .tablet-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .responsive-dashboard-container .mobile-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

/* Mobile phones - show mobile version */
@media screen and (max-width: 767px) {
  .responsive-dashboard-container .desktop-only,
  .responsive-dashboard-container .tablet-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  .responsive-dashboard-container .mobile-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* ===== ORIENTATION SUPPORT ===== */
/* Mobile landscape - keep mobile version */
@media screen and (max-width: 767px) and (orientation: landscape) {
  .responsive-dashboard-container .mobile-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* Tablet portrait - keep tablet version */
@media screen and (min-width: 768px) and (max-width: 1023px) and (orientation: portrait) {
  .responsive-dashboard-container .tablet-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* ===== PRINT SUPPORT ===== */
@media print {
  .responsive-dashboard-container .desktop-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .responsive-dashboard-container .tablet-only,
  .responsive-dashboard-container .mobile-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

/* ===== DEBUG MODE ===== */
/* Shows which version is currently active */
/* ===== Debug Mode (for development only) ===== */
/* Uncomment the following to see which version is active */
/*
.responsive-dashboard-container::before {
  content: 'Desktop Version';
  position: fixed;
  top: 10px;
  right: 10px;
  background: rgba(255, 0, 0, 0.8);
  color: white;
  padding: 5px 10px;
  border-radius: 5px;
  z-index: 9999;
  font-size: 12px;
}

@media (max-width: 1023px) and (min-width: 768px) {
  .responsive-dashboard-container::before {
    content: 'Tablet Version';
    background: rgba(0, 255, 0, 0.8);
  }
}

@media (max-width: 767px) {
  .responsive-dashboard-container::before {
    content: 'Mobile Version';
    background: rgba(0, 0, 255, 0.8);
  }
}
*/

/* ===== FALLBACK SUPPORT ===== */
/* For browsers that don't support CSS Grid or Flexbox */
@supports not (display: flex) {
  .responsive-dashboard-container .desktop-only {
    display: block !important;
  }

  .responsive-dashboard-container .tablet-only,
  .responsive-dashboard-container .mobile-only {
    display: none !important;
  }
}

/* ===== HIGH DPI SUPPORT ===== */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .responsive-dashboard-container {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

/* ===== PERFORMANCE OPTIMIZATION ===== */
/* Disable animations during responsive changes */
.responsive-dashboard-container * {
  transition: none !important;
  animation: none !important;
}

/* Re-enable animations only for interactive elements */
.responsive-dashboard-container button,
.responsive-dashboard-container a,
.responsive-dashboard-container .interactive {
  transition: all 0.3s ease !important;
}

/* ===== ACCESSIBILITY ===== */
@media (prefers-reduced-motion: reduce) {
  .responsive-dashboard-container * {
    animation: none !important;
    transition: none !important;
  }
}
