/* Minimal fallback styles in case Bootstrap fails to load */
    .modal.bootstrap-failed { display: none !important; }
    .modal-backdrop { position: fixed; top: 0; left: 0; z-index: 1050; width: 100vw; height: 100vh; background-color: #000; opacity: 0.5; }
    .modal.show { display: block !important; }
    /* Keep global confirmations above feature modals opened from within them. */
    #globalConfirmModal { z-index: 1070; }
    .alert { padding: 12px 20px; margin: 10px 0; border-radius: 4px; }
    .alert-danger { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
    .alert-warning { background: #fff3cd; color: #856404; border: 1px solid #ffeaa7; }
    .btn { padding: 8px 16px; border: 1px solid #ccc; background: #fff; cursor: pointer; border-radius: 4px; }
    .btn-primary { background: #0d6efd; color: white; border-color: #0d6efd; }

.img-graph-lightbox { cursor: pointer; }
    #graphLightbox { cursor: pointer; }
    #graphLightbox .modal-dialog { max-width: 95vw; max-height: 95vh; }
    #graphLightbox .modal-body { padding: 0; display: flex; align-items: center; justify-content: center; min-height: 70vh; }
    #graphLightbox .modal-body img { max-width: 100%; max-height: 90vh; object-fit: contain; }
