body,
.app-default {
    background-color: #ece9e9 !important;
    font-family: "Open Sans", serif;
    font-size: 13px !important;
}

@media (min-width: 992px) {
    .header {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        height: 65px !important;
        transition: left ease;
    }
}

@media (min-width: 992px) {

    .container,
    .container-xxl,
    .container-fluid,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl {
        padding: 0 5px !important;
    }
}

@media (min-width: 992px) {
    .app-content {
        padding-top: 0px !important;
        padding-bottom: 30px;
        padding-left: 0;
        padding-right: 0;
    }
}

.card .card-header {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    min-height: 70px;
    padding: 0 1rem;
    color: var(--bs-card-cap-color);
    background-color: var(--bs-card-cap-bg);
    border-bottom: 1px solid var(--bs-card-border-color);
}

.card .card-body {
    padding: 1rem 1rem !important;
    color: var(--bs-card-color);
}

@media (min-width: 992px) {
    .app-container {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

@media (min-width: 992px) {
    .app-header .app-header-menu .menu>.menu-item>.menu-link .menu-title {
        color: #252f4a !important;
    }
}

.form-check-input {
    height: 1.5rem !important;
}

.form-control {
    display: block;
    width: 100%;
    padding: 0.5rem 0.5rem !important;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.5;
    color: var(--bs-gray-700);
    appearance: none;
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: 1px solid var(--bs-gray-300);
    border-radius: 0.3rem !important;
    box-shadow: false;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-select {
    appearance: none;
}

.form-select {
    --bs-form-select-bg-img: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2378829D' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e);
    display: block;
    width: 100%;
    padding: 0.5rem 3rem 0.5rem 1rem !important;
    font-size: 1rem !important;
    font-weight: 500;
    line-height: 1.5;
    color: var(--bs-gray-700);
    appearance: none;
    background-color: var(--bs-body-bg);
    background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 16px 12px;
    border: 1px solid var(--bs-gray-300);
    border-radius: 0.3rem !important;
    box-shadow: false;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.select2-container--bootstrap5 .select2-selection--multiple:not(.form-select-sm):not(.form-select-lg) {
    min-height: calc(.5em + 1.9rem + 2px) !important;
    padding-top: 0.575rem;
    padding-bottom: 0.575rem;
}

.card {
    --bs-card-box-shadow: var(--bs-root-card-box-shadow);
    --bs-card-border-color: var(--bs-root-card-border-color);
    border: 1px solid var(--bs-card-border-color);
}

.mt-5 {
    margin-top: 1.25rem !important;
}

.card {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 1rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-title-color: var(--bs-gray-900);
    --bs-card-subtitle-color: ;
    --bs-card-border-width: 1px;
    --bs-card-border-color: #f1f1f402;
    --bs-card-border-radius: 0.5rem !important;
}

.btn-sm,
.btn-group-sm>.btn {
    --bs-btn-padding-y: 0.55rem;
    --bs-btn-padding-x: 1rem;
    --bs-btn-font-size: 0.95rem;
    --bs-btn-border-radius: 0.3rem !important;
}

.btn-primary {
    --bs-btn-color: #000000;
    --bs-btn-bg: #1B84FF;
    --bs-btn-border-color: #1B84FF;
    --bs-btn-hover-color: #000000;
    --bs-btn-hover-bg: #3d96ff;
    --bs-btn-hover-border-color: #3290ff;
    --bs-btn-focus-shadow-rgb: 23, 112, 217;
    --bs-btn-active-color: #000000;
    --bs-btn-active-bg: #499dff;
    --bs-btn-active-border-color: #3290ff;
    --bs-btn-active-shadow: none;
    --bs-btn-disabled-color: #000000;
    --bs-btn-disabled-bg: #1B84FF;
    --bs-btn-disabled-border-color: #1B84FF;
}

.btn {
    --bs-btn-padding-x: 1.5rem;
    --bs-btn-padding-y: 0.775rem;
    --bs-btn-font-family: ;
    --bs-btn-font-size: 1.1rem;
    --bs-btn-font-weight: 500;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: var(--bs-body-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: 1px;
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: 0.3rem !important;
}

.select2-container--bootstrap5 .select2-dropdown .select2-search .select2-search__field {
    background-color: var(--bs-body-bg);
    padding: 0.55rem 0.5rem !important;
    color: var(--bs-gray-700);
    font-size: 0.95rem;
    border: 1px solid var(--bs-gray-300);
    border-radius: 0.3rem !important;
    outline: 0 !important;
}

.btn:not(.btn-outline):not(.btn-dashed):not(.btn-bordered):not(.border-hover):not(.border-active):not(.btn-flush):not(.btn-icon):not(.btn-hover-outline).btn-sm,
.btn-group-sm>.btn:not(.btn-outline):not(.btn-dashed):not(.btn-bordered):not(.border-hover):not(.border-active):not(.btn-flush):not(.btn-icon):not(.btn-hover-outline) {
    padding: calc(0.4rem + 1px) calc(1rem + 1px) !important;
}

.btn:not(.btn-outline):not(.btn-dashed):not(.btn-bordered):not(.border-hover):not(.border-active):not(.btn-flush):not(.btn-icon):not(.btn-hover-outline) {
    border: 0;
    padding: calc(0.4rem + 1px) calc(1.5rem + 1px) !important;
}

.image-input-placeholder {
    background-image: url('svg/avatars/blank.svg');
}

[data-bs-theme="dark"] .image-input-placeholder {
    background-image: url('/assets/media/logos/user.png');
}

.form-check-label {
    color: #1e1e1f !important;
}

@media (min-width: 992px) {
    .header .header-menu .menu>.menu-item.show>.menu-link .menu-title {
        color: #e1e2e3 !important;
    }
}

@media (min-width: 992px) {
    .header .header-menu .menu>.menu-item>.menu-link {
        color: #eeeff2 !important;
    }
}

@media (min-width: 992px) {

    /* Hidden: replaced by custom gradient underline on .menu-title::after */
    .header .header-menu .menu>.menu-item.here>.menu-link:after,
    .header .header-menu .menu>.menu-item>.menu-link.active:after {
        display: none !important;
        content: none !important;
    }
}


@media (min-width: 992px) {
    .header .header-menu .menu>.menu-item>.menu-link .menu-title {
        color: #eeeff2 !important;
    }
}

@media (min-width: 992px) {
    .header .header-menu .menu>.menu-item>.menu-link {
        padding: 0;
        margin-right: 2.75rem !important;
    }
}

@media (min-width: 992px) {
    .header-fixed[data-kt-sticky-header=on] .header .header-container {
        background-color: #181717 !important;
        box-shadow: var(--bs-header-desktop-fixed-box-shadow);
        border-bottom-right-radius: 20px;
        border-bottom-left-radius: 20px;
    }
}

.nav-line-tabs .nav-item .nav-link.active,
.nav-line-tabs .nav-item.show .nav-link,
.nav-line-tabs .nav-item .nav-link:hover:not(.disabled) {
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #dd1bff !important;
    color: #f6f6f6 !important;
    transition: color 0.2sease;
}

.nav-line-tabs .nav-item .nav-link {
    color: #f9f9f9 !important;
    border: 0;
    border-bottom: 1px solid transparent;
    transition: color 0.2sease;
    padding: 0.5rem 0;
    margin: 0 1rem;
}

.container-flag {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.continent {
    width: 20%;
    margin-bottom: 20px;
}

.country {
    display: flex;
    align-items: center;
    margin: 5px 0;
}

.img-flag {
    width: 15px;
    height: 10px;
    margin-right: 20px;
    border: 1px solid #ccc;
}

/* ── Admin header glassmorphism (cannot be done with Bootstrap alone) ── */
#kt_header {
    background: rgba(10, 6, 28, 0.80) !important;
    backdrop-filter: blur(20px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(160%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4) !important;
    position: relative;
    z-index: 100;
    margin-bottom: 10px;
}

#kt_header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, #6a11cb 15%, #c471ed 35%, #f64f59 55%, #f7971e 75%, transparent 100%);
    background-size: 200% 100%;
    animation: hdrGlow 4s linear infinite;
    opacity: 0.75;
    pointer-events: none;
}

@keyframes hdrGlow {
    0% {
        background-position: 0% 0%;
    }

    100% {
        background-position: 200% 0%;
    }
}

/* Active nav underline bar */
#kt_header_nav .menu-link .menu-title {
    position: relative;
    padding-bottom: 2px;
    transition: color .2s;
}

#kt_header_nav .menu-link .menu-title::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%) scaleX(0);
    width: 100%;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: linear-gradient(90deg, #c471ed, #f64f59, #f7971e);
    transition: transform .3s cubic-bezier(.4, 0, .2, 1), opacity .3s;
    opacity: 0;
}

#kt_header_nav .menu-link:hover .menu-title::after {
    transform: translateX(-50%) scaleX(0.55);
    opacity: 0.4;
}

#kt_header_nav .menu-link.active .menu-title::after {
    transform: translateX(-50%) scaleX(1);
    opacity: 1;
    box-shadow: 0 0 10px rgba(246, 79, 89, .6);
}

#kt_header_nav .menu-item.here>.menu-link,
#kt_header_nav .menu-link.active,
#kt_header_nav .menu-link:hover {
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Master dropdown dark panel */
#kt_header_nav .menu-sub-lg-dropdown,
.menu-sub.menu-sub-lg-dropdown.show {
    background: rgba(12, 7, 32, 0.97) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border: 1px solid rgba(255, 255, 255, 0.07) !important;
    border-radius: 12px !important;
    box-shadow: 0 16px 48px rgba(0, 0, 0, .55) !important;
    padding: 6px !important;
    min-width: 170px !important;
    z-index: 9999 !important;
    position: absolute !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link {
    border-radius: 7px !important;
    padding: 8px 14px !important;
    transition: background .2s !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link .menu-title {
    color: rgba(255, 255, 255, .78) !important;
    padding-bottom: 0 !important;
    text-shadow: none !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link:hover {
    background: rgba(196, 113, 237, .15) !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link:hover .menu-title {
    color: #fff !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link.active {
    background: linear-gradient(90deg, rgba(196, 113, 237, .25), rgba(246, 79, 89, .12)) !important;
    border-left: 3px solid #c471ed !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link.active .menu-title {
    color: #fff !important;
    font-weight: 700 !important;
}

#kt_header_nav .menu-sub-lg-dropdown .menu-link .menu-title::after {
    display: none !important;
}