/* Modifiers pour éléments de base */
.body--bare {
	background-color: transparent;
	display: block;
	height: auto;
}

/* Adptation aux iframes */
.iframe--invisible {
	border: 0;
	display: block;
	width: 100%;
}
.iframe-body {
	display: initial;
	}
	.iframe-body .iframe-p-0 {
		padding: 0 !important;
	}
	.iframe-body .iframe-pt-0 {
		padding-top: 0 !important;
	}
	.iframe-body .iframe-pr-0 {
		padding-right: 0 !important;
	}
	.iframe-body .iframe-pb-0 {
		padding-bottom: 0 !important;
	}
	.iframe-body .iframe-pl-0 {
		padding-left: 0 !important;
	}
	.iframe-body .iframe-px-0 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.iframe-body .iframe-py-0 {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.iframe-body .iframe-m-0 {
		margin: 0 !important;
	}
	.iframe-body .iframe-mt-0 {
		margin-top: 0 !important;
	}
	.iframe-body .iframe-mr-0 {
		margin-right: 0 !important;
	}
	.iframe-body .iframe-mb-0 {
		margin-bottom: 0 !important;
	}
	.iframe-body .iframe-ml-0 {
		margin-left: 0 !important;
	}
	.iframe-body .iframe-mx-0 {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.iframe-body .iframe-my-0 {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
	.iframe-body .iframe-not-rounded {
		border-radius: 0 !important;
	}

/* Utilitaires */
.hidden {
	display: none !important;
	visibility: hidden !important;
}
.nowrap {
	white-space: nowrap;
}
.flex-full-width {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%
}
.modal-container {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	max-width: 800px;
}

/* Formulaires */
.pseudo-input {
	cursor: text;
}
.pseudo-placeholder {
	color: #CCCCCC;
}
.with-options {
	flex-wrap: wrap;
}
.checkable-options {
	display: none;
	width: 100%;
	}
	.checkbox input:checked ~ .checkable-options {
		display: block;
		margin-top: 0.5em;
	}

/* Champs requis */
.form-group--required > label:after {
	content: '*';
	margin-left: 0.3em;
	color: #F64E60;
}

/* Styles pour les tableaux */
.checkbox-column {
	width:  18px;
}
.checkable-wrapper--checked {
	background-color: rgba(255, 168, 0, 0.04);
}

.custom-file-label[data-browse-label]::after {
	content: attr(data-browse-label);
}

/* Bouton avec icône */
.check-btn input {
	display: none;
}
.check-btn input:checked + label {
	background-color: #00abc5;
}
.check-btn__switch--on-active {
	display: none;
}
.check-btn--warning input:checked + label,
.check-btn--warning input:checked + label:hover {
	background-color: red !important;
	color: white !important;
}
.check-btn--warning input:checked + label .check-btn__switch--on-active {
	display: initial;
}
.check-btn--warning input:checked + label .check-btn__switch--on-inactive {
	display: none;
}

/* Bloc d'actions de groupe */
.groupActions-wrapper {
	position: relative;
}
.groupActions {
	position: absolute;
	max-width: 100%;
	left: 0;
	bottom: -12px;
	margin: 0 0 10px -6px;
	background: white;
	border-radius: 6px;
	padding: 10px;
	background-color: #4AB7E9;
	box-shadow: 0 6px 6px rgba( 0, 0, 0, 0.2 );
	opacity: 0;
	visibility: hidden;
	transition: visibility 300ms, margin-bottom 250ms ease, opacity 250ms ease;
}
.groupActions--open {
	margin-bottom: 0;
	opacity: 1;
	visibility: visible;
	transition: margin-bottom 250ms ease, opacity 250ms ease;
}
.groupActions::after {
	content:  "";
	position: absolute;
	left: 19px;
	top: 100%;
	border: 6px solid transparent;
	border-top-color: #4AB7E9;
}
.groupActions label {
	margin-bottom: 0;
	padding-right: 12px;
}
.groupActions .btn-icon i {
	margin: 0 10px;
}

/* Bloc d'actions au survol */
.hoverActions-wrapper {
	position: relative;
}
.hoverActions-wrapper--with-border::before {
	content: '';
	position: absolute;
	top: -0.75rem;
	right: -0.75rem;
	bottom: -0.75rem;
	left: -0.75rem;
	border: 1px solid #E5E5E5;
	border-radius: 0.75rem;
	transition: opacity 400ms;
	pointer-events: none;
	opacity: 0;
}
.hoverActions {
	position: absolute;
	bottom: 100%;
	margin-bottom: -1.35rem;
	right: 1rem;
	transition: opacity 400ms;
	pointer-events: none;
	opacity: 0;
}
.hoverActions-wrapper--with-border .hoverActions {
	margin-bottom: -0.6rem;
}
.hoverActions-wrapper:hover .hoverActions {
	opacity: 1;
	pointer-events: initial;
}
.hoverActions-wrapper--with-border:hover::before {
	opacity: 1;
}

/* Hiérarchie */
.hierarchy-toggle:before {
	content: "\f0fe";
}
.hierarchy-toggle[aria-expanded="true"]:before {
	content: "\f146";
}

.hierarchy-child {
	padding-left: 1.5em;
	background: url("/media/parts/hierarchy-child.gif") no-repeat;
}
.hierarchy-child--level2 {
	padding-left: 3em;
	background-position: 1.5em 0;
}
.hierarchy-child--level3 {
	padding-left: 4.5em;
	background-position: 3em 0;
}
.hierarchy-child--level4 {
	padding-left: 6em;
	background-position: 4.5em 0;
}
.hierarchy-child--level5 {
	padding-left: 7.5em;
	background-position: 6em 0;
}
.hierarchy-child--level6 {
	padding-left: 9em;
	background-position: 7.5em 0;
}
.hierarchy-child--level7 {
	padding-left: 10.5em;
	background-position: 9em 0;
}
.hierarchy-child--level8 {
	padding-left: 12em;
	background-position: 10.5em 0;
}
.hierarchy-child--level9 {
	padding-left: 13.5em;
	background-position: 12em 0;
}

/* Modales */
.modal-body__iframe {
	padding: 0;
}
.modal-frame {
	border: 0;
	display: block;
	width: 100%;
	height: 30rem;
	max-height: 75vh;
}
.modal-dialog--confirm {
	min-width: 25em;
}
.modal-dialog--alert {
	min-width: 18em;
}
dialog {
	border: 0;
	padding: 0;
	background-color: transparent;
}
dialog > .modal-dialog {
	margin-left: 1.75em;
	margin-right: 1.75em;
}

/* Frame */
.frame {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: none;
	background-color: rgba(142, 214, 246, 0.3);
	z-index: 100;
	padding: 30px;
}
.frame--open {
	display: block;
}
.frame--hidden {
	display: block;
	opacity: 0.01;
	pointer-events: none;
}
.frame__iframe {
	width: 100%;
	height: 100%;
	border: 1px solid #cccccc;
	box-shadow: 0 0 15px rgb(0 0 125 / 20%);
	background-color: var( --light );
}
.frame__close {
	position: absolute;
	top: 30px;
	right: 30px;
	margin: -15px -15px 0 0;
}

/* Surcharges du template */
.alert i {
	color: inherit;
}
.input-icon .twitter-typeahead {
	width: auto;
}
.input-group .twitter-typeahead {
	flex:  1;
}
.input-group > .twitter-typeahead:not( :first-child ) > .form-control {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
.input-group > .twitter-typeahead:not( :last-child ) > .form-control {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.checkbox {
	user-select: none;
}
.btn-icon .spinner-sm {
	margin-left: -1.25em;
}

.accordion-light .card {
	background-color: transparent;
}

.dropdown-pseudo-item {
	padding: 0.75rem 1.25rem;
	white-space: nowrap;
}

.tooltip .arrow {
	width: 0;
	height: 0;
}
.tooltip .arrow::before {
	margin: -0.4rem;
}
.tooltip-top,
.tooltip-auto[x-placement^=top] {
	padding: 0.4rem 0;
	}
	.tooltip-top .arrow,
	.tooltip-auto[x-placement^=top] .arrow {
		bottom: 0;
		left: 50%;
		}
		.tooltip-top .arrow::before,
		.tooltip-auto[x-placement^=top] .arrow::before {
			top: 0;
			border-width: 0.4rem 0.4rem 0;
			border-top-color: #ffffff;
		}
.tooltip-right,
.tooltip-auto[x-placement^=right] {
	padding: 0 0.4rem;
	}
	.tooltip-right .arrow,
	.tooltip-auto[x-placement^=right] .arrow {
		left: 0;
		top:  50%;
		}
		.tooltip-right .arrow::before,
		.tooltip-auto[x-placement^=right] .arrow::before {
			right: 0;
			border-width: 0.4rem 0.4rem 0.4rem 0;
			border-right-color: #ffffff;
		}
.tooltip-bottom,
.tooltip-auto[x-placement^=bottom] {
	padding: 0.4rem 0;
	}
	.tooltip-bottom .arrow,
	.tooltip-auto[x-placement^=bottom] .arrow {
		top: 0;
		left: 50%;
		}
		.tooltip-bottom .arrow::before,
		.tooltip-auto[x-placement^=bottom] .arrow::before {
			bottom: 0;
			border-width: 0 0.4rem 0.4rem;
			border-bottom-color: #ffffff;
		}
.tooltip-left,
.tooltip-auto[x-placement^=left] {
	padding: 0 0.4rem;
	}
	.tooltip-left .arrow,
	.tooltip-auto[x-placement^=left] .arrow {
		right: 0;
		top:  50%;
		}
		.tooltip-left .arrow::before,
		.tooltip-auto[x-placement^=left] .arrow::before {
			left: 0;
			border-width: 0.4rem 0 0.4rem 0.4rem;
			border-left-color: #ffffff;
		}

/* Overlay et block de chargement */
.block-overlay-wrapper {
	position: relative;
}
.block-overlay-wrapper--empty {
	min-height: 7em;
}
.block-overlay {
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border: none;
	margin: 0px;
	padding: 0px;
	cursor: wait;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: column wrap;
	flex-flow: column wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background-color: rgba(0, 0, 0, 0.05);
}
.block-overlay-wrapper--empty .block-overlay {
	background-color: transparent;
}
.block-overlay-hover .block-overlay {
	opacity: 0;
	transition: opacity 400ms;
	pointer-events:  none;
	}
	.block-overlay-hover:hover .block-overlay {
		opacity: 1;
		pointer-events: initial;
	}

/* Liste compactable */
.compactable-list--compacted .compactable-hide {
	display: none !important;
}
.compactable-list--expanded .compactable-show {
	display: none !important;
}

/* Surcharge des plugins */
.tab-pane .editor-toolbar {
	border-top: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
.tt-menu .tt-dataset .tt-cursor {
	background-color: rgba(74, 183, 233, 0.08);
}
.prism-break {
	white-space: normal !important;
}

/* Extractions de animate.css */
/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2020 Animate.css
 */
:root {
	--animate-duration: 1s;
	--animate-delay: 1s;
	--animate-repeat: 1;
}
.animate__animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-duration: var(--animate-duration);
	animation-duration: var(--animate-duration);
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
.animate__animated.animate__infinite {
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}
.animate__animated.animate__repeat-1 {
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
	-webkit-animation-iteration-count: var(--animate-repeat);
	animation-iteration-count: var(--animate-repeat);
}
.animate__animated.animate__repeat-2 {
	-webkit-animation-iteration-count: calc(1 * 2);
	animation-iteration-count: calc(1 * 2);
	-webkit-animation-iteration-count: calc(var(--animate-repeat) * 2);
	animation-iteration-count: calc(var(--animate-repeat) * 2);
}
.animate__animated.animate__repeat-3 {
	-webkit-animation-iteration-count: calc(1 * 3);
	animation-iteration-count: calc(1 * 3);
	-webkit-animation-iteration-count: calc(var(--animate-repeat) * 3);
	animation-iteration-count: calc(var(--animate-repeat) * 3);
}
.animate__animated.animate__delay-1s {
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
	-webkit-animation-delay: var(--animate-delay);
	animation-delay: var(--animate-delay);
}
.animate__animated.animate__delay-2s {
	-webkit-animation-delay: calc(1s * 2);
	animation-delay: calc(1s * 2);
	-webkit-animation-delay: calc(var(--animate-delay) * 2);
	animation-delay: calc(var(--animate-delay) * 2);
}
.animate__animated.animate__delay-3s {
	-webkit-animation-delay: calc(1s * 3);
	animation-delay: calc(1s * 3);
	-webkit-animation-delay: calc(var(--animate-delay) * 3);
	animation-delay: calc(var(--animate-delay) * 3);
}
.animate__animated.animate__delay-4s {
	-webkit-animation-delay: calc(1s * 4);
	animation-delay: calc(1s * 4);
	-webkit-animation-delay: calc(var(--animate-delay) * 4);
	animation-delay: calc(var(--animate-delay) * 4);
}
.animate__animated.animate__delay-5s {
	-webkit-animation-delay: calc(1s * 5);
	animation-delay: calc(1s * 5);
	-webkit-animation-delay: calc(var(--animate-delay) * 5);
	animation-delay: calc(var(--animate-delay) * 5);
}
.animate__animated.animate__faster {
	-webkit-animation-duration: calc(1s / 2);
	animation-duration: calc(1s / 2);
	-webkit-animation-duration: calc(var(--animate-duration) / 2);
	animation-duration: calc(var(--animate-duration) / 2);
}
.animate__animated.animate__fast {
	-webkit-animation-duration: calc(1s * 0.8);
	animation-duration: calc(1s * 0.8);
	-webkit-animation-duration: calc(var(--animate-duration) * 0.8);
	animation-duration: calc(var(--animate-duration) * 0.8);
}
.animate__animated.animate__slow {
	-webkit-animation-duration: calc(1s * 2);
	animation-duration: calc(1s * 2);
	-webkit-animation-duration: calc(var(--animate-duration) * 2);
	animation-duration: calc(var(--animate-duration) * 2);
}
.animate__animated.animate__slower {
	-webkit-animation-duration: calc(1s * 3);
	animation-duration: calc(1s * 3);
	-webkit-animation-duration: calc(var(--animate-duration) * 3);
	animation-duration: calc(var(--animate-duration) * 3);
}
@media print, (prefers-reduced-motion: reduce) {
	.animate__animated {
		-webkit-animation-duration: 1ms !important;
		animation-duration: 1ms !important;
		-webkit-transition-duration: 1ms !important;
		transition-duration: 1ms !important;
		-webkit-animation-iteration-count: 1 !important;
		animation-iteration-count: 1 !important;
	}

	.animate__animated[class*='Out'] {
		opacity: 0;
	}
}

@-webkit-keyframes fadeInDown {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
@keyframes fadeInDown {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInDown {
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
}
@-webkit-keyframes fadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}
@keyframes fadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}
.animate__fadeOut {
	-webkit-animation-name: fadeOut;
	animation-name: fadeOut;
}