/* Table double level */
.table-double-level tbody tr td:first-child {
    border-left: 2px solid transparent;
}
.table-double-level tbody:hover tr td:first-child {
    border-left: 2px solid var(--bs-primary-active) !important;
}
.table-double-level tbody:hover tr {
    --bs-table-accent-bg: var(--bs-table-hover-bg);
}
.table-double-level tbody:hover tr.table-first-level td {
    --bs-table-accent-bg: white;
}
.table-double-level tbody tr.table-second-level td {
    background: #f7f7f7 !important;
}


.filebundle-file-input {
    border-radius: 0 .45rem .45rem 0;
}


/* Reset css filters on filtered table */
.metronic-table-filter {
    text-transform: none !important;
    text-align: start !important;
}


/** bootstrap-select customization */
.bootstrap-select .dropdown-menu {
    padding: 0;
}

.bootstrap-select .dropdown-divider {
    border-top: none;
}

.bootstrap-select button {
    border: 1px solid var(--bs-gray-300) !important;
}

.bootstrap-select button:not(.bs-placeholder) {
    color: var(--bs-gray-800) !important;
}

.bootstrap-select .dropdown-toggle {
    padding-left: 12px !important;
}

div.bootstrap-select {
    display: block !important;
}

.form-floating .bootstrap-select .dropdown-toggle {
    padding-top: 24px !important;
    padding-bottom: 5px !important;
}

.form-floating .bootstrap-select .dropdown-toggle::after {
    position: relative;
    bottom: 6px;
}

.metronic-bootstrap-select-multiple .dropdown-menu li a {
    display: inline-flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: space-between;
}

.metronic-bootstrap-select-multiple .dropdown-menu li a span.check-mark {
    display: block !important;
    visibility: hidden;
}

.metronic-bootstrap-select-multiple.show-tick .dropdown-menu .selected span.check-mark {
    position: relative !important;
    visibility: visible !important;
    top:0 !important;
    right:0 !important;
    color:white;
    background: var(--bs-primary) !important;
    color: white;
    padding: 3px 5px;
    border-radius: 5px;
}
.is-invalid .bootstrap-select button {
    border-color: var(--bs-danger) !important;
}

/** tinyMCE customization **/
.tox-statusbar {
    display: none !important;
}

/** Override toastr-info color **/
.toast-info {
    background-color: var(--bs-primary-active) !important;
}

/** Custom select2 design **/
.select2-container--bootstrap5.select2-container--focus .select2-selection--multiple {
    color: var(--bs-gray-700);
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-gray-300);
}

.select2-container--bootstrap5 .select2-selection--multiple {
    border-radius: 0.475rem;
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-gray-300);
    cursor: text;
}

.select2-container--bootstrap5 .select2-selection--multiple:not(.form-select-sm):not(.form-select-lg) {
    padding: 0.575rem;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__options--nested {
    max-height: inherit !important;
}

/** Disable modal-static transform animation **/
.modal.modal-static .modal-dialog {
    transform: scale(1) !important;
}

/** Remove gray background on flatpickr input **/
.metronic-flatpickr-started[readonly]:not([disabled]) {
    color: var(--kt-input-focus-color);
    background-color: var(--kt-input-focus-bg);
}

.metronic-flatpickr-started.is-invalid {
    border-color: #f1416c;
}

.metronic-flatpickr-started {
    cursor: pointer;
}

/** Add red border on invalid input Flatpickr **/
.is-invalid .metronic-flatpickr-started {
    border-color: var(--bs-danger) !important;
}


/** Remove gray background on bootstrap-select button **/
.bootstrap-select button {
    background-color: var(--kt-input-focus-bg) !important;
}
.bootstrap-select button:disabled {
    background-color: var(--bs-gray-200) !important;
    color: var(--bs-gray-900) !important;
}

/** Override .form-control focus border color to emphasize input **/
.form-control:focus {
    border-color: var(--bs-primary-active);
}

/** Remove padding-top on tabs to avoid extra space between header & body **/
.nav-line-tabs .nav-item .nav-link {
    padding-top: 0;
}

/** Allow small double line in table cell **/
.double-line small {
    display: block;
    font-size: 13px;
}

/** fix app padding bottom **/
@media (min-width: 992px) {
    .app-content {
        padding-bottom: 0px;
    }
}

@media (max-width: 991.98px) {
    .app-content {
        padding-bottom: 0px;
    }
}

/** Typeahead customization **/
.form-floating .twitter-typeahead .tt-query {
    padding-top: 1.50rem;
    padding-bottom: 0.625rem;
}

.input-group span:last-child .tt-input {
    border-top-right-radius: 0.475rem !important;
    border-bottom-right-radius: 0.475rem !important;
}


/** Fix modal separator with negative margin **/
.modal .separator.mx-n9 {
    margin-right: -1.75rem !important;
    margin-left: -1.75rem !important;
}

/** Remove card margin in modal **/
.modal .card-header, .modal .card-body {
    padding-left: 0;
    padding-right: 0;
}

/** Fix google autocomplete z-index **/
.pac-container {
    z-index: 1055 !important;
}

/** Design for signature area **/
.metronic-signature img {
    max-height: 150px;
}

.metronic-signature-lightbox {
    position: fixed;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    z-index: 3000;
    background: rgba(255,255,255,0.9);
    text-align: center;
}

.metronic-signature-lightbox > div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    width: 90%;
}

.metronic-signature-canvas {
    border: 2px solid #cacaca;
    border-radius: 10px;
    background:white;
}

.hide {
    display: none !important
}

/** Metronic actions responsive **/
@media screen and (max-width:768px) {
    .app-header {
        height: auto;
        padding: 0;
    }
    #kt_app_header_wrapper {
        flex-direction: column;
    }
}


/** Metronic table responsive **/
@media screen and (max-width:768px) {
    table.metronic-table-responsive colgroup {
        display:none;
    }
	table.metronic-table-responsive {
		word-wrap:break-word;
        background: #f1f1f1;
	}
	table.metronic-table-responsive thead {
		position:absolute;
        left:-999em;
        top:-999em;
	}
	table.metronic-table-responsive td {
        padding: 3px;
        line-height: 12px;
		display:block;
		float:left;/* ie9 and under hack */
		width:100%;
		clear:both;
		padding:10px 5px;
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
	}
	table.metronic-table-responsive tbody, table.metronic-table-responsive tr {
		display:block;
	}
	.metronic-table-responsive td:before {
		content:attr(data-metronic-table-responsive-name);
		display:block;
		font-weight:bold;
		margin:0 0 2px;
		color:#000;
	}
	.metronic-table-responsive tr {
        width:100%;
		float:left;
        margin-top:10px;
        margin-bottom:10px;
        background:white;
        border-radius: 10px;
        font-weight: normal;
	}
	.metronic-table-responsive tr * {
        font-weight: normal;
	}
}

/** .nav-line-tabs responsive **/
@media screen and (max-width:768px) {
    .nav-line-tabs .nav-item {
        width: 100%;
    }
    .nav-line-tabs .nav-item .nav-link {
        padding-bottom: 0 !important;
        margin:0 0 10px 0;
    }
}

/** hide scrollbar while keeping scroll functionality **/
.hide-scrollbar {
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

/** Spread badges when hovering with animation **/
.badge.hover-badge-spread {
    transition: margin-right 0.3s ease; /* Transitions the margin only */
}
.badge.hover-badge-spread:hover {
    margin-right: 10px !important;
}

/** Avoid tiny-mce content to be editable before initialization **/
.metronic-tinymce-wrapper{
    position: relative;
}
.metronic-tinymce-wrapper:after {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
    z-index: 0;
}

/** Add danger border to invalid TinyMCE editor **/
.is-invalid .tox-tinymce {
    border: 1px solid var(--bs-danger) !important;
}

.mirror-element {
    width: auto !important;
    max-width: 300px;
    z-index: 1000;
}

.is-dragging {
    opacity: 0.5;
}

[data-controller="metronic-confidential"] {
    cursor: pointer;
    transition: filter 0.3s ease;
}

.dropzone {
    border: 1px dashed var(--bs-stamina-primary);
    background-color: var(--bs-stamina-primary-light);
}

/** Save button with custom animations */
.btn-stamina-save-gradient {
    background-image: radial-gradient( circle farthest-corner at 10% 20%,  rgba(117,86,204,1) 0%, rgba(213,105,167,1) 90% );
}
.btn-stamina-save-gradient.needs-save-shimmer {
    position: relative;
    overflow: hidden;
}
.btn-stamina-save-gradient.needs-save-shimmer::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, 0.4),
            transparent
    );
    animation: shimmer 3.5s infinite;
}
@keyframes shimmer {
    0%   { left: -100%; }
    50%  { left: 100%; }
    100% { left: -100%; }
}

/** Allows bootstrap tooltip to be shown on disabled button */
.btn[disabled] {
    pointer-events: auto;
}

.busy-load-container {
    /*backdrop-filter: blur(2px);*/
    /*background-color: rgba(255, 255, 255, 0.3); !* fond semi-transparent *!*/
    /*-webkit-backdrop-filter: blur(10px); !* pour Safari *!*/
    /*border-radius: 10px;*/
}

.text-stamina-disco {
    position: relative;
    font-weight: 900;
    color: #fff;
    letter-spacing: 2px;
    display: inline-block;
}

.text-stamina-disco::before,
.text-stamina-disco::after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

/* Première couche (la plus proche) */
.text-stamina-disco::before {
    color: #dccaff;
    opacity: 0.6;
    transform: translate(4px, 4px);
    z-index: -1;
}

/* Deuxième couche (intermédiaire) */
.text-stamina-disco::after {
    color: #b894ff;
    opacity: 0.4;
    transform: translate(8px, 8px);
    z-index: -2;
}

.fa-stamina {
    display: inline-block;
    width: 1.3em;
    height: 1.3em;
    background-image: url('/bundles/staminacore/img/icon/purple/stamina-icon-default.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: -0.125em;
}


/** Custom calendar font awesome icon **/
.calendar-stack {
    position: relative;
    display: inline-block;
    width: 0.9285714286em;
    height: 1em;
}
.calendar-stack .fa-calendar,
.calendar-stack .calendar-day {
    position: absolute;
}
.calendar-stack .calendar-day {
    top: 1.175em;
    left: 0.025em;
    width: 1.775em;
    height: 0.75em;
    font-family: sans-serif;
    font-size: 0.471429em;
    font-weight: 700;
    line-height: 0.5714285714em;
    text-align: center;
}