/**
 * BlueTickr — consistent modal styling (all app pages).
 */
.modal.ems-modal .modal-dialog {
    margin: 1.75rem auto;
}

.modal.ems-modal .modal-content {
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.35);
}

.modal.ems-modal .modal-header {
    background: #0f172a;
    color: #fff;
    border-bottom: none;
    padding: 1.15rem 1.5rem;
    align-items: center;
}

.modal.ems-modal .modal-title {
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: -0.02em;
}

.modal.ems-modal .modal-header .btn-close {
    filter: invert(1) grayscale(100%);
    opacity: 0.85;
}

.modal.ems-modal .modal-body {
    padding: 1.5rem;
    background: #fff;
    color: #1e293b;
}

.modal.ems-modal .modal-footer {
    background: #f8fafc;
    border-top: 1px solid #e2e8f0;
    padding: 1rem 1.5rem;
    gap: 0.5rem;
}

.modal.ems-modal .modal-footer .btn-primary,
.modal.ems-modal .modal-footer .btn-custom.btn-primary-custom {
    background: #2563eb;
    border-color: #2563eb;
}

/* Semantic variants */
.modal.ems-modal--success .modal-header {
    background: linear-gradient(135deg, #047857, #10b981);
}

.modal.ems-modal--warning .modal-header {
    background: linear-gradient(135deg, #b45309, #f59e0b);
}

.modal.ems-modal--danger .modal-header {
    background: linear-gradient(135deg, #b91c1c, #ef4444);
}

.modal.ems-modal--info .modal-header {
    background: linear-gradient(135deg, #1d4ed8, #3b82f6);
}

.modal-backdrop.show {
    opacity: 0.55;
}
