/* ENSURE PAGES LOAD COMPLETE - Critical fix for incomplete page loading */

/* Remove any loading states that block content - AGGRESSIVE */
html.loading,
body.loading,
html.hidden,
body.hidden,
html.blocked,
body.blocked,
html.buffering,
body.buffering,
html.initial-load,
body.initial-load,
html.preload,
body.preload,
html[class*="loading"],
body[class*="loading"],
html[class*="buffering"],
body[class*="buffering"] {
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
    overflow: auto !important;
    height: auto !important;
    min-height: 100vh !important;
}

/* Remove buffering from all elements */
.loading,
.buffering,
.blocked,
.hidden,
.initial-load,
.preload,
[class*="loading"],
[class*="buffering"] {
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
}

/* Force all main content visible */
main,
#main-content,
section,
article,
.container,
.content {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: auto !important;
}

/* Remove blocking overlays - BUT preserve navbar and sidebar */
.overlay:not(.active):not(.sidebar),
.loading-overlay:not(.active):not(.sidebar),
.blocking-overlay:not(.active):not(.sidebar),
.spinner:not(.active):not(.sidebar),
.loader:not(.active):not(.sidebar),
.buffering-overlay:not(.active):not(.sidebar),
.buffer:not(.active):not(.sidebar),
[class*="loading"]:not(.active):not(.sidebar):not(.navbar):not(nav),
[class*="buffering"]:not(.active):not(.sidebar):not(.navbar):not(nav),
[class*="spinner"]:not(.active):not(.sidebar):not(.navbar):not(nav) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

/* Ensure navbar is always clickable */
.navbar,
nav,
.nav-links,
.nav-link,
.menu-btn,
.theme-toggle {
    pointer-events: auto !important;
    z-index: 1000 !important;
    position: relative !important;
}

/* Ensure all sections are visible */
section {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    padding: 80px 20px !important;
}

/* Force containers visible */
.container,
.content,
.about-container,
.projects-container,
.resources-container {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Ensure images load */
img {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-width: 100% !important;
    height: auto !important;
}

/* Ensure text is visible */
h1, h2, h3, h4, h5, h6, p, span, div, a, li {
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
}

/* Remove any lazy loading that might block */
img[data-src] {
    display: inline-block !important;
}

/* Ensure scripts don't block rendering */
script {
    display: none !important;
}

/* Force all lazy-loaded content visible */
[data-src],
[data-lazy] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Ensure iframes load */
iframe {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 200px !important;
}

/* Force all articles visible */
article {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    padding: 20px !important;
}

/* Ensure no content is clipped */
section,
main,
article,
.container {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
}
