/* =====================================================================
 * modals.css — opaque portal dialogs (overlays must stay readable on top
 * of the live app). Dashboard cards use semi-transparent --bg-card; never
 * reuse .mfr-card inside overlays without .portal-modal.
 * ===================================================================== */

:root {
    --bg-modal-panel: var(--color-slate-900);
    --bg-modal-backdrop: rgba(2, 6, 23, 0.82);
    --z-modal-portal: 20000;
}

html.theme-light {
    --bg-modal-panel: var(--color-white);
    --bg-modal-backdrop: rgba(15, 23, 42, 0.55);
}

.pdf-modal-overlay {
    font-family: var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);
    position: fixed;
    inset: 0;
    z-index: var(--z-modal-portal);
    background: var(--bg-modal-backdrop);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-6);
    overflow-y: auto;
}

.portal-modal,
.pdf-modal-overlay > .pdf-modal,
.pdf-modal-overlay > .portal-modal,
.pdf-modal-overlay > .mfr-card {
    font-family: var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);
    background: var(--bg-modal-panel) !important;
    color: var(--text-default);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-lg);
    cursor: default;
    width: 100%;
    max-height: 90vh;
    overflow: auto;
}

.portal-modal {
    padding: var(--space-5) var(--space-6);
}

.pdf-modal-overlay .portal-modal h2,
.pdf-modal-overlay .portal-modal h3,
.pdf-modal-overlay .pdf-modal h2 {
    color: var(--text-strong);
}

.pdf-modal-overlay .mfr-sub,
.pdf-modal-overlay .pdf-modal-sub {
    color: var(--text-muted);
}

.pdf-modal-overlay .mfr-input,
.pdf-modal-overlay input,
.pdf-modal-overlay select,
.pdf-modal-overlay textarea {
    background: var(--bg-input);
    color: var(--text-default);
    border: 1px solid var(--border-default);
}

html.theme-light .pdf-modal-overlay .mfr-input,
html.theme-light .pdf-modal-overlay input,
html.theme-light .pdf-modal-overlay select,
html.theme-light .pdf-modal-overlay textarea {
    background: var(--bg-input);
    color: var(--text-default);
}

.pdf-modal {
    font-family: var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);
    background: var(--bg-modal-panel);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-xl);
    width: 100%;
    max-width: 760px;
    max-height: 90vh;
    overflow-y: auto;
    padding: 22px 26px;
    color: var(--text-default);
    box-shadow: var(--shadow-lg);
}

.pdf-modal h2 {
    margin: 0 0 4px;
    color: var(--text-strong);
    font-size: 1.2rem;
}

.pdf-modal-sub {
    margin: 0 0 18px;
    color: var(--text-muted);
    font-size: 0.85rem;
}

/* Inline invite / action panels (not overlays) — same opaque surface */
.portal-surface-solid {
    background: var(--bg-modal-panel) !important;
    color: var(--text-default);
}
