/* Latar partikel Three.js — hanya dipakai jika body.isp-bg-particles */
body.isp-bg-particles .isp-particle-bg-host {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}

body.isp-bg-particles .wrapper {
    position: relative;
    /* Tanpa z-index di sini: z-index:1 membuat stacking context sehingga .modal di dalam
       wrapper tertutup .modal-backdrop (anak body, ~1990). */
}

/*
 * theme-dark-global.css: body.dark-mode .wrapper / .content-wrapper pakai background solid !important.
 * Spesifisitas harus lebih tinggi agar area utama tembus ke kanvas (z-index 0).
 */
body.isp-bg-particles.dark-mode .wrapper,
body.isp-bg-particles.dark-mode .content-wrapper,
body.isp-bg-particles.dark-mode .main-footer {
    background: transparent !important;
    background-color: transparent !important;
}

/* Shell operasional / billing kadang memuat inner gelap penuh */
body.isp-bg-particles.dark-mode .app-content-inner,
body.isp-bg-particles.dark-mode .app-content-shell {
    background: transparent !important;
    background-color: transparent !important;
}

/* Latar terang: area konten tembus ke kanvas (tema terang + obsidian) */
body.isp-bg-particles.isp-particle-backdrop-light:not(.dark-mode) .wrapper,
body.isp-bg-particles.isp-particle-backdrop-light:not(.dark-mode) .content-wrapper {
    background: transparent !important;
    background-color: transparent !important;
}
