
@font-face { font-family: HouseGothicHG23Ext; 
		src: url('../fonts/HouseGothicHG23Ext-LIGHT3.eot'),  /* IE */  
				url('../fonts/HouseGothicHG23Ext-LIGHT3.otf') format("truetype"); /* non-IE */  
		} 
@font-face { font-family: HouseGothicHG23Ext; font-weight: bold; 
		src: url('../fonts/HouseGothicHG23Ext-BOLD3.eot'),  /* IE */  
			url('../fonts/HouseGothicHG23Ext-BOLD3.otf') format("truetype"); /* non-IE */  		
		}

.ms { font-family: HouseGothicHG23Ext, sans-serif; }


.educadomo { font-family: Ubuntu, sans-serif;  }


.grad_blue { 
background: rgba(73,155,234,1);
background: -moz-linear-gradient(top, rgba(73,155,234,1) 0%, rgba(168,208,219,1) 47%, rgba(32,124,229,1) 100%);
background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(73,155,234,1)), color-stop(47%, rgba(168,208,219,1)), color-stop(100%, rgba(32,124,229,1)));
background: -webkit-linear-gradient(top, rgba(73,155,234,1) 0%, rgba(168,208,219,1) 47%, rgba(32,124,229,1) 100%);
background: -o-linear-gradient(top, rgba(73,155,234,1) 0%, rgba(168,208,219,1) 47%, rgba(32,124,229,1) 100%);
background: -ms-linear-gradient(top, rgba(73,155,234,1) 0%, rgba(168,208,219,1) 47%, rgba(32,124,229,1) 100%);
background: linear-gradient(to bottom, rgba(73,155,234,1) 0%, rgba(168,208,219,1) 47%, rgba(32,124,229,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#499bea', endColorstr='#207ce5', GradientType=0 );
}

/* For background image*/
img.superbg {
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
}


.top_right {
	position: absolute; 
	right:5px; 
	top:5px; 
}

.infowindow {
	width:400px;
	height:150px;
}

.display_none {
  display: none;
}

/*Empeche retour à la ligne*/
.nowrap {
  white-space: nowrap;
}




/*Pas d'espace après element*/
.no_margin_bottom {
  margin-bottom: 0px;
  border-bottom: 0px ;
}

/*Petit espace après element*/
.small_margin_bottom {
  margin-bottom: 10px;
}


/* Format des infobulles Carte Google Maps dans page recherche coach */
#infowindow_content{
	max-width: 400px;
	line-height: normal;
	white-space: nowrap;
	overflow: auto;
}
/* Style listing coaches dans page recherche coach */
#list_coaches tr[class="coach"]:hover{
	background-color: #EEEEEE;
}

.large-modal-width  {
  width: 80% !important; /* Élargir le modal à 80% de l'écran */
  max-width: 80% !important; /* Assurer que la largeur ne dépasse pas 80% */
}

.md-content {
  display: flex;
  flex-direction: column;
  height: 100%; /* S'assurer que le contenu remplit la hauteur */
}

.modal-body {
  overflow-y: auto; /* Activer le scroll vertical dans le corps du modal */
  max-height: calc(90vh - 120px); /* Hauteur max de la modal-body avec padding */
}

.modal-dialog.modal-large  {
  width: 90%; /* desired relative width */

}

/* Entête des menus accordéons plus courts (fiches soutiens) */
.accordion .panel-heading  .accordion_title   {
  padding: 5px 5px;
  font-weight: bold;
}

/* Retirer les borders des tableaux */
.borderless td, .borderless th {
    border: none;
}

/*  placepicker.js */
.placepicker-map {
  min-height: 250px
}

/* For header multiselect */
.custom-header {
  background: #2494f2;
  color: #FFFFFF;
  padding: 7px 10px;
  font-size: 14px;
}

/* legend_box*/
.legend_box {   
    float: left;
    width: 20px;
    height: 20px;
    margin: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(0,0,0,.2);
}

/* copywrite */
.copywrite{
	color: white;
}

/* Propositions */

[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
  display: none !important;
}



/*Pas d'espace avant element*/
.list_title_themed {
  color: white;
  background-color: rgba(73,155,234,1) !important; /*le "!important" permet de passer au dessus du CSS "récalcitrant" */
  padding-top: 10px; 
  padding-bottom: 10px;
  margin-top: 1px !important;
  font-size: 14px;
}

.info_title_themed {
	color: white;
	background-color: #65ca65 !important;
	text-align:center;
	padding-top: 10px; 
	padding-bottom: 10px;
	margin-top: 1px !important;
	font-size: 14px;
}

.info_title_themed_refuse{
	color: white;
	background-color: #df4b33 !important;
	text-align:center;
	padding-top: 10px; 
	padding-bottom: 10px;
	margin-top: 1px !important;
	font-size: 14px;
}

.element_no_selected {
	border-bottom: 1px solid #e8e8e8;
	font-size: 14px;
	font-family: 'Open Sans', sans-serif;
}

.element_selected {
	background-color: rgba(73,155,234,0.4) !important;
	border-style: solid !important;
	border-width: 1px !important;
	border-color: rgba(73,155,234,0.8) !important;
	font-family: 'Open Sans', sans-serif;
}

.top-left_place {
    position:absolute;
	padding: 2px 3px !important;
	cursor: pointer;
    float: left;
	z-index:2;
}

.propositionMap {
		height: 100%;
		width: 100%;
    }
	
.perfect_match {
	color: #FFCC00;
}

.icon_green {
	color: #65ca65;
}

.icon_yellow {
	color: yellow;
}

.icon_orange {
	color: #f90;
}

.icon_red {
	color: #df4b33;
}

.icon_blue {
	color: rgb(73,155,234);
}

.icon_gray {
	color: rgb(224,224,224);
}

.icon_dark_gray {
	color: rgb(163, 163, 163);
}


.icheckfix {
	margin:1px !important;
}
.clickable{
	cursor: pointer;
}

.button_full_width{
	width: 98%;
}

.button_half_width_right{
	width: 40.5%;
	float:right;
}

.button_half_width_left{
	width: 40.5%;
	float:left;
}

.tableColorGreen{
	background-color: rgba(78, 219, 60, 0.8);
}

.tableColorBlue{
	background-color: rgba(73,155,234,0.8);
	cursor: pointer;
}

.tableSelected{
	background-color: rgba(78, 219, 60, 0.8);
}

.form-horizontal_fix {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

/*Bouton qui overlap la map*/
#wrapper { position: relative; }
#over_map { position: absolute; top: 10px; right: 20px; z-index: 1; }
#over_map_legend { background-color: white; position: absolute; top: 50px; right: 20px; z-index: 1; }

/*nano*/
.nano {
  position : relative;
  width    : 500px;
  height   : 150px;
  overflow : hidden;
}
.nano .content {
  position      : absolute;
  overflow      : scroll;
  overflow-x    : hidden;
  top           : 0;
  right         : 0;
  bottom        : 0;
  left          : 0;
}
.nano .content:focus {
  outline: thin dotted;
}
.nano .content::-webkit-scrollbar {
  visibility: hidden;
}
.has-scrollbar .content::-webkit-scrollbar {
  visibility: visible;
}
.nano > .pane {
  background : rgba(0,0,0,.25);
  position   : absolute;
  width      : 10px;
  right      : 0;
  top        : 0;
  bottom     : 0;
  visibility : hidden\9; /* Target only IE7 and IE8 with this hack */ 
  
  opacity    : .01; 
  -webkit-transition    : .2s;
  -moz-transition       : .2s;
  -o-transition         : .2s;
  transition            : .2s;
  -moz-border-radius    : 5px;
  -webkit-border-radius : 5px;  
  border-radius         : 5px;
}
.nano > .pane > .slider {
  background: #444;
  background: rgba(0,0,0,.5);
  position              : relative;
  margin                : 0 1px;
  -moz-border-radius    : 3px;
  -webkit-border-radius : 3px;  
  border-radius         : 3px;
}
.nano:hover > .pane, .pane.active, .pane.flashed {
  visibility : visible\9; /* Target only IE7 and IE8 with this hack */
  opacity    : 0.99;
}

.nano { background: #fff; width: 175px; height: 550px; }
.nano .content { padding: 10px; }
.nano .pane   { background: #888; }
.nano .slider { background: #111; }

/*interface ADMIN: soutien*/
.adminInterfacePreSelectedSupport {
	z-index: 1;
	left: 5px;
	top: 50px;
	background-color:#ecf8fd;
	layer-background-color:#003366;
	visibility: visible;
}

.adminInterfacePreSelectedSupportSELECTED {
	z-index: 1;
	left: 5px;
	top: 50px;
	background-color:#CCE6FF;
	layer-background-color:#003366;
	visibility: visible;

}
.adminInterfacePreSelectedSupportALTERNATIVE {
	z-index: 1;
	left: 5px;
	top: 50px;
	background-color:#e6e6e4;
	layer-background-color:#003366;
	visibility: visible;

}

.cursor-auto{
	cursor: auto;
}

/* Réduction padding bouton btn-xs*/
.btn-xs {
	padding: 2px 2px;
}

/* Correction pour nouvelle charge graphique 2018 */


.btn-success,
.btn-success:focus {
	background-color: #4BCA84;
	border-color: #54A754;
}
.btn-success:hover,
.btn-success:active,
.btn-success.active,
.open .dropdown-toggle.btn-success {
	background-color: #61d193;
	border-color: #54A754;
}

.text-info{
	color: #00A9E0 !important;
	
}


.list-group.tickets .list-group-item .ms_icons {
	float: left;
	margin-right: 10px;
}

.icon-adults_squared_blue:before {
  content: "\e900";
  color: #00b5ef;
}


.i-circle.success i{
	color: #4BCA84;
}

/* Détails des éléments d'un programme de cours*/
.list-group.tickets.white-list .list-group-item 
{
  background: #fff;
   cursor:auto;
}

/* list-group White */
.list-group.tickets.white-list .list-group-item p
{
  line-height: 20px;
}

.list-group.tickets.white-list-border .list-group-item 
{
  background: #fff;
  line-height: 20px;
     border-style: solid;
    border-width: 3px;
	border-color: grey;
	border-radius: 5px;
}

.list-group-item.border-green 
{
	border-color: #4BCA84 !important;
}

.list-group-item.border-grey 
{
	border-color: #E0DED8 !important;
}


.nano.planning_dates { background: #fff;  height: 200px; width: 100%;}
.nano.planning_dates > .nano-pane { background: #fff; }
.nano.planning_dates > .nano-pane > .nano-slider { background: #fff; }

.nano .pane   { background: #E0DED8; }

/*Bouton call back inferieur droit*/
.callBackButton {
    position: fixed;
    bottom: 35px;
    right: 10px; 
}

.callBackButton:hover
{
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
}

/** Stripe Elements
 * The CSS shown here will not be introduced in the Quickstart guide, but shows
 * how you can use CSS to style your Element's container.
 */
.StripeElement {
  background-color: white;
  height: 40px;
  padding: 10px 12px;
  border-radius: 4px;
  border: 1px solid transparent;
  box-shadow: 0 1px 3px 0 #e6ebf1;
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease;
}

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
  border-color: #fa755a;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}

.white_color{
	color: #fff; !important;
}


.modal.vertical_align {
  text-align: center;
}

@media screen and (min-width: 768px) { 
  .vertical_align:before {
    display: inline-block;
    vertical-align: middle;
    content: " ";
    height: 100%;
  }
}

.modal-dialog.vertical_align {
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}


/*Majuscule à la première lettre*/
.capitalize {
   text-transform: capitalize;
}

/* Animation pulse pour les boutons et icônes */
.pulse {
  animation: pulse 1s infinite;
}

@keyframes pulse {
  0% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.1); opacity: 0.5; }
  100% { transform: scale(1); opacity: 1; }
}