/* 🔥 Żeby się dało kopiować tekst z sweetalerta */
.swal2-popup,
.swal2-html-container,
.swal2-title,
.swal2-content,
.swal2-icon,
.swal2-actions,
.swal2-footer {
    -webkit-user-select: text !important;
    -moz-user-select: text !important;
    -ms-user-select: text !important;
    user-select: text !important;
}

/* 🔥 Żeby się dało kopiować tekst z sweetalerta  koniec */

/* 🔥 Nadpisanie Bootstrapa - czerwony border dla inputów z klasą is-invalid */
.input-group.is-invalid .form-control,
.input-group.is-invalid .flatpickr-input,
.input-group.is-invalid .input-group-text {
    border-color: #f06548;
}

#dropzoneArea.is-invalid {
    border: 1px solid #f06548;
    border-radius: .375rem; /* jak bootstrapowe inputy */
}

/* Czerwona ramka jak w Bootstrapie, ale bez poświaty */
.select2-container--default .select2-selection--single.is-invalid,
.select2-container--default .select2-selection--multiple.is-invalid {
    border-color: #f06548 !important;
}

/* zielona ramka jak w Bootstrapie dla Select2 */
.select2-container--default .select2-selection--single.is-valid,
.select2-container--default .select2-selection--multiple.is-valid {
    border-color: #45cb85 !important;              /* success */
}

/* (Opcjonalnie) wyrównanie wyglądu do .form-control */
.select2-container--default .select2-selection--single {
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
    display: flex;
    align-items: center;
    border: 1px solid #ced4da;
    border-radius: .375rem;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
}


/* 🔥 Nadpisanie Bootstrapa - czerwony border dla inputów z klasą is-invalid koniec */

/* 🔥 Własne nadpisanie – działa do 768px */
@media (max-width: 767.98px) {
    .navbar-header .dropdown {
        position: static !important;
    }
    .navbar-header .dropdown .dropdown-menu {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
    }
}

.pulse-glow {
    position: relative; /* konieczne, żeby ::after wiedziało gdzie się pozycjonować */
    z-index: 1;
}

.pulse-glow::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: rgba(220,53,69,0.4);
    transform: translate(-50%, -50%) scale(1);
    z-index: -1;
    animation: pulse-after 1.5s infinite;
}

@keyframes pulse-after {
    0%   { transform: translate(-50%, -50%) scale(1);   opacity: 0.7; }
    70%  { transform: translate(-50%, -50%) scale(1.8); opacity: 0; }
    100% { transform: translate(-50%, -50%) scale(1.8); opacity: 0; }
}
