/* Lightweight SweetAlert-style popup (self-contained, no external library). */
.pm-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    opacity: 0;
    transition: opacity 0.18s ease;
    padding: 1rem;
    backdrop-filter: blur(2px);
}
.pm-overlay.show { opacity: 1; }

.pm-box {
    background: var(--premium-panel, #ffffff);
    color: var(--premium-text-primary, #111827);
    width: min(94vw, 420px);
    border: 1px solid var(--premium-border, rgba(0,0,0,.08));
    border-radius: 1rem;
    padding: 1.85rem 1.75rem 1.5rem;
    text-align: center;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.45);
    transform: scale(0.9);
    transition: transform 0.18s ease;
}
.pm-overlay.show .pm-box { transform: scale(1); }

.pm-icon {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1;
    margin: 0 auto 1rem;
    border: 3px solid;
    animation: pmPop 0.25s ease;
}
@keyframes pmPop { from { transform: scale(0); } to { transform: scale(1); } }
.pm-success { color: #12b76a; border-color: #12b76a; }
.pm-error   { color: #f04438; border-color: #f04438; }
.pm-warning { color: #f79009; border-color: #f79009; }
.pm-question{ color: #3b82f6; border-color: #3b82f6; }

.pm-title { font-size: 1.3rem; font-weight: 700; margin: 0 0 0.4rem; }
.pm-text { color: var(--premium-text-secondary, #6b7280); margin-bottom: 1.3rem; }
.pm-actions { display: flex; gap: 0.6rem; justify-content: center; }
.pm-btn {
    border: none;
    border-radius: 0.6rem;
    padding: 0.6rem 1.5rem;
    font-weight: 600;
    cursor: pointer;
    transition: filter 0.15s ease;
}
.pm-btn:hover { filter: brightness(0.94); }
.pm-ok { background: var(--premium-accent, #2563eb); color: #000; }
.pm-cancel { background: rgba(128, 128, 128, 0.22); color: var(--premium-text-primary, #333); }
