/* =============================================================================
   EMERGENCY BODY VISIBILITY CSS
   Critical styles to ensure the body is never hidden
   This file should be loaded LAST to override any problematic styles
   ============================================================================= */

/* Force body to always be visible - Maximum priority */
html, body {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 100vh !important;
}

/* Override any possible hiding mechanisms */
body[style*="display: none"],
body[style*="display:none"],
body[hidden],
body.hidden {
    display: block !important;
    visibility: visible !important;
}

/* Ensure main content containers are visible */
#body,
.content-wrapper,
main,
.main-content {
    display: block !important;
    visibility: visible !important;
}

/* Loading state emergency override */
body.loading {
    display: block !important;
    opacity: 1 !important;
}

/* Emergency fallback styling */
body {
    font-family: Arial, sans-serif !important;
    color: #333 !important;
    background: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Console warning for debugging */
body::before {
    content: '';
    position: fixed;
    top: -1px;
    left: -1px;
    width: 1px;
    height: 1px;
    pointer-events: none;
    z-index: -1;
}

/* High priority overrides for specific problematic selectors */
.loading body,
.hidden body,
body[style*="display"],
body[style*="opacity"],
body[style*="visibility"] {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Prevent any JavaScript from hiding essential elements */
html[style*="display: none"],
html[style*="display:none"] {
    display: block !important;
}

/* Debug indicator removed */