@charset "UTF-8";


/* Barre de chargement globale */
#lrf-loading-bar {
	position: fixed;
	top: 0;
	left: 0;
	height: 3px;
	background: linear-gradient(90deg, #42a5f5, #1565c0, #42a5f5);
	background-size: 200% 100%;
	z-index: 999999;
	width: 0;
	opacity: 0;
	transition: opacity 0.2s;
}
#lrf-loading-bar.lrf-loading-active {
	opacity: 1;
	width: 80%;
	transition: width 8s cubic-bezier(0.1, 0.5, 0.3, 1), opacity 0.2s;
	animation: lrf-loading-shimmer 1.5s infinite;
}
#lrf-loading-bar.lrf-loading-done {
	width: 100%;
	transition: width 0.2s ease-out, opacity 0.4s ease 0.2s;
	opacity: 0;
}
@keyframes lrf-loading-shimmer {
	0%   { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

/* Classes layout unifiees */
.page-content {
	margin-left: 200px;
}

.page-header {
	padding: 0;
}
.page-header h1 {
	margin: 0;
	padding: 12px 16px;
	font-size: 24px;
	font-weight: 400;
	display: inline-block;
}
.page-header .page-header-btn {
	display: inline-block;
	vertical-align: middle;
}

/* Menu lateral modernise */
.sidebar-nav {
	padding: 8px 0;
}
.sidebar-nav .nav-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 16px;
	color: #333;
	text-decoration: none;
	font-size: 14px;
	transition: background-color 0.15s, border-left 0.15s;
	border-left: 3px solid transparent;
}
.sidebar-nav .nav-item:hover {
	background-color: rgba(0,0,0,0.06);
}
.sidebar-nav .nav-item.active {
	border-left-color: var(--menu-active-color, #455a64);
	background-color: rgba(0,0,0,0.08);
	font-weight: 600;
}
.sidebar-nav .nav-item i {
	width: 22px;
	text-align: center;
	font-size: 16px;
}
.sidebar-section {
	margin-top: 6px;
	padding-top: 6px;
	border-top: 1px solid rgba(0,0,0,0.08);
}
.sidebar-footer {
	padding: 12px 16px;
	text-align: center;
	border-top: 1px solid rgba(0,0,0,0.1);
	margin-top: auto;
}

:root {
	--menu-bg-color: darkgreen;
	--menu_gauche-largeur: 20%;
	--menu_gauche-largeur-max: 25%;
	--menu_gauche-largeur-min: 150px;
	--menu_haut-hauteur: 50px;
	--application-largeur: calc(100% - var(--menu_gauche-largeur)- 5px);
	--application-hauteur: calc(100% - var(--menu_haut-hauteur)- 5px);
	--application-left: calc(var(--menu_gauche-largeur)+ 5px);
	--drapeau-position: calc(var(--menu_haut-hauteur) / 2);
	--drapeau-hauteur: 24px;
	--drapeau-largeur: 40px;
	--drapeau-top: calc((var(--menu_haut-hauteur) - var(--drapeau-hauteur)) / 2)px;
	--drapeau-cell: calc(var(--drapeau-largeur) + 10);

}



.menu_haut {
	position: sticky;
	display: block;
	top: 0;
	left: 0;
	z-index: 99999999 !important;
	height: var(--menu_haut-hauteur);
	width: 100%;
	/*background-color: var(--menu-bg-color);*/
}

.menu_haut_masque {
	/* position: absolute; */
	top: 0;
	left: 0;
	height: var(--menu_haut-hauteur);
	width: 100%;
	/*background-color: var(--menu-bg-color);*/
}

.langues {
	height: var(--menu_haut-hauteur);
}

.drapeaux {
	display: block;
	position: relative;
	margin: auto;
	/*top: var(--drapeau-top);*/
	/*top: 18;*/
	height: var(--drapeau-hauteur);
	width: var(--drapeau-largeur);
	box-shadow: none;
	transition: height 0.5s, width 0.5s;
}

.drapeaux:hover {
	height: 36px;
	width: 60px;
	box-shadow: 0 8px 16px 0 rgba(255, 255, 255, 0.2), 0 6px 20px 0 rgba(255, 255, 255, 0.19);
	/*transform: scale(2,2);*/

}

.w3-cell.d {
	width: 50px;
}

.w3-cell.deco {
	width: 100px;
}

.lrf_lien {
	text-decoration: none;
}

.w3-striped.w3-theme-l4 {
	background-color: inherit;
}

.w3-striped.w3-theme-l4 th {
	background-color: inherit;
}

.w3-striped.w3-theme-l4 tr:nth-child(odd) {
	background-color: inherit;
}

.w3-striped.w3-theme-l4 tr:nth-child(even) {
	background-color: inherit;
}


.menu_gauche {
	position: fixed;
	top: var(--menu_haut-hauteur);
	left: 0px;
	min-width: var(--menu_gauche-largeur-min);
	width: var(--menu_gauche-largeur);
	max-width: var(--menu_gauche-largeur-max);
	height: 100%;
	background-color: var(--menu-bg-color);
}

.application {
	position: absolute;
	top: var(--menu_haut-hauteur);
	left: var(--menu_gauche-largeur);
	width: var(--application-largeur);
	height: var(--application-hauteur);
}

.plugins {
	display: inline;
	position: relative;
	height: 60px;
	width: 180px;
	background-color: aqua;
}

.pop_login {
	padding: 15px;
	margin: 5px;
	text-align: center;
}

.iconeXL {
	font-size: larger;
}

.formatage {
	word-wrap: normal;
	word-break: normal;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

.c_pointer {
	cursor: pointer;
}

.c_trash {
	cursor: crosshair;
}

.admin_ligne {
	height: 30px;
	line-height: 30px;
	vertical-align: middle;
}

.invalide {
	box-shadow: 0px 0px 10px 2px #e32a2a9c !important;
}

.editable {
	background-color: #F0FFF0;
	opacity: 0.8;
}

.non_editable {
	background-color: #FFFAFA;
	opacity: 0.8;
}

.droite_bas {
	display: block !important;
	position: absolute !important;
	right: 0px !important;
	bottom: 0px !important;
	top: auto !important;
}

.gauche_bas {
	display: block !important;
	position: absolute !important;
	left: 0px !important;
	bottom: 0px !important;
	top: auto !important;
}

.demi {
	width: 50%;
	float: left;
}

.quart {
	width: 25%;
	float: left;
}

.quinte {
	width: 20%;
	float: left;
}

.galerie_mini {
	width: 20%;
	min-width: 200px;
	float: left;
}

.galerie_web {
	max-width: 25%;
	min-width: 300px;
	min-height: 300px;
	float: left;
}

.galerie_web_contenu {
	min-height: 220px;
}