/*** GLOBAL ***/
#p_body {
	font-family: 'Open Sans Condensed', sans-serif;
	color: #373737;
}
.sf-dump *{
	font-family: unset;
	color: unset;
}
ul, li {
	list-style-type: none;
	margin:0;
	padding:0;
}
a {
	color: #73c1ca;
}
a:hover {
	text-decoration: none;
	color:inherit;
}
legend {
	font-weight: bold;
	font-size:1em;
	display: inline-block;
	width:auto;
}
body {
	background-color:#f7f7f7;
}
.content {
	padding-bottom: 2rem;
}
@media screen and (min-width:768px) {
	.content {
		margin-top:100px!important;
	}
}

/*** TOOLBOX ***/

/* Colors */
.aquablue { color: #73c1ca; }
.fill-aquablue { fill:#73c1ca; }
.bg-aquablue { background:#73c1ca; }
/**/
.red { color:#ec4848; }
.fill-red { fill:#ec4848; }
.bg-red { background:#ec4848; }
/**/
.darkgrey { color: #373737; }
.fill-darkgrey { fill:#373737; }
.bg-darkgrey { background:#373737; }
/**/
.lightgrey { color: #999999; }
.fill-lightgrey { fill:#999999; }
.bg-lightgrey { background:#999999; }
/**/
.grey { color: #ebebeb; }
.fill-grey { fill:#ebebeb; }
.bg-grey { background:#ebebeb; }
/**/
.white { color:#fff; }
.fill-white { fill:#fff; }
.bg-white { background:#fff; }
/**/
.green { color: #9ce4c8; }
.fill-green { fill: #9ce4c8; }
.bg-green { background: #9ce4c8; }
/**/
.beige { color : #d7ccb7; }
.fill-beige { fill : #d7ccb7; }
.bg-beige { background : #d7ccb7; }
/**/
.brown { color:#8C6446; }
.fill-brown { color:#8C6446; }
.bg-brown { color:#8C6446; }
/**/
.dark-blue { color : #244975; }
.fill-dark-blue { fill : #244975; }
.bg-dark-blue { background : #244975; }
/* Autres couleurs */
.bg-pink { background: #e920b3; }
.bg-purple { background: #a7219f; }
.bg-indigo { background: #7a0cd8; }
.bg-orange { background: #ec701d; }
.bg-yellow { background: #f3e011; }
.yellow { color: #f3e011; }
.orange { color: #ec701d; }
.bg-black { background: #000000; }
.bg-cyan { background: #00f0ff; }

/* Fonts */
.open-sans-condensed { font-family: 'Open Sans Condensed', sans-serif; }

/* Styles */
.uppercase { text-transform: uppercase; }
.underline { text-decoration: underline; }
.lh-1 { line-height: 1em }
.center { margin: 0 auto; }
.height100 { height:100vh; }
.flex-grow-1 { flex-grow:1 }
.no-margin { margin:0!important; }
.no-padding { padding:0!important; }
.bold { font-weight:700!important; }
.light { font-weight:300!important; }
.small-col-padding { padding-left:10px; padding-right:10px }
.fs-small { font-size:0.8rem!important; }

@media screen and (min-width:992px) {
	.no-padding-right { padding-right:0; }
}
@media screen and (max-width:768px) {
	.no-border-xs { border:none!important; }
}
@media screen and (max-width:992px) {
	.no-border-sm { border:none!important; }
}

/* No collapse on desktop */
@media (min-width: 992px) {
  .collapse.dont-collapse-xs, .collapsing.dont-collapse-xs {
    display: block;
    height: auto !important;
    visibility: visible;
  }
}

/* Bloc de contenu général */
.content-block {
	background:#fff;
	padding:15px;
	border-radius: 5px;
	box-shadow: 0 0 2px #999;
}

/* Buttons */
.btn {
	transition: 0.2s ease;
}
.btn-aquablue {
	background: #73c1ca;
	color: #fff;
	border: none;
}
.btn-light {
	background: #fff;
	box-shadow: 0 0 2px #999;
}
.btn-light:hover, .btn-light:focus, .btn-light:active {
	background: #fff;
}
.btn-aquablue:hover {
	background: #67aeb6;
	color: #fff;
}

/* Pagination */
.pagination-nav .pagination {
	display: flex;
	justify-content: space-between;
	align-items:center;
}
.pagination-nav .page-item .page-link {
	color:#73c1ca;
}
.pagination-nav .page-item .page-link:focus,
.pagination-nav .page-item .page-link:visited {
	outline:none;
	box-shadow: none;
}
.pagination-nav .page-item .page-link:hover {
	color:#4c9093;
}
.pagination-nav .page-item.active .page-link {
	background-color: #73c1ca;
	border-color: #73c1ca;
	color:#FFFFFF;
}


/* Forms */
.form-group {
	margin-bottom: .5rem;
	display: flex;
}
.form-control {
	padding:.3rem .5rem;
}
.form-group > label, .form-group > legend {
	font-weight:700;
	font-size:0.9em;
	width: 24%;
	display: inline-block;
	min-width: 100px;
}
.form-group > .form-control, .form-group .form-subgroup, .form-group .input-group {
	border: 0;
	height: auto!important;
	max-width:76%;
}
.form-group.form-grey .selectpicker + .dropdown-toggle {
	background-color: #ececec;
	border:none;
	box-shadow:none;
}
.form-group.form-grey .form-control {
	background-color: #ececec;
}
.form-group.form-white .form-control {
	background-color: #fff;
	box-shadow: 0 0 2px #999;
}
.form-group .form-subgroup label {
	flex-grow:2;
}
.form-group .input-group {
	position: relative;
}
.form-group .input-group .input-group-addon {
	position:absolute;
	top:6px;
	right:10px;
}
.custom-control-input:checked ~ .custom-control-label::before {
	background: #67aeb6;
}

/* Select */
.dropdown-menu {
	padding:0;
	margin-top:-2px;
	border-radius:0 5px 5px 5px;
}
.dropdown-menu .dropdown-item.active,
.dropdown-menu .dropdown-item:active {
	background:#73c1ca;
	color:#FFFFFF;
}
.dropdown-menu .dropdown-item.active span,
.dropdown-menu .dropdown-item:active span {
	color:#FFFFFF;
}

/* Divider */
.divided {
  display: flex;
  align-items: center;
  margin:10px 0;
  text-align: right;
}
.divider {
  flex-grow: 1;
  margin: 5px;
  border-bottom: 1px solid #d8d8d8;
  padding-top:10px;
}

/* Bubble euro */
.euro {
	display: inline-block;
	font-size:0.7em;
	margin-right:5px;
	width:1.3em;
	height:1.3em;
	border-radius:20px;
	text-align: center;
	line-height:1.3em;
}
.euro.bg-red {
	color:#fff;
}
.euro.bg-white {
	color:#ec4848;
}

/* Bubbles */
.bubble {
	display: inline-block;
	width:10px;
	height:10px;
	border-radius:10px;
}

/* Cards */
.card-header {
	padding:.75rem .8rem;
}
.card-body {
	padding:.8rem;
}

/* Toggle switch */
div.checkbox.switcher label, div.radio.switcher label {
  padding: 0;
}
div.checkbox.switcher label *, div.radio.switcher label * {
  vertical-align: middle;
}
div.checkbox.switcher label input, div.radio.switcher label input {
  display: none;
}
div.checkbox.switcher label input + span, div.radio.switcher label input + span {
  position: relative;
  display: inline-block;
  margin-right: 10px;
  width: 56px;
  height: 28px;
  background: #f2f2f2;
  border: 1px solid #eee;
  border-radius: 50px;
  transition: all 0.3s ease-in-out;
}
div.checkbox.switcher label input + span small, div.radio.switcher label input + span small {
  position: absolute;
  display: block;
  width: 50%;
  height: 100%;
  background: #fff;
  border-radius: 50%;
  transition: all 0.3s ease-in-out;
  left: 0;
}
div.checkbox.switcher label input:checked + span, div.radio.switcher label input:checked + span {
  background: #269bff;
  border-color: #269bff;
}
div.checkbox.switcher label input:checked + span small, div.radio.switcher label input:checked + span small {
  left: 50%;
}

/*** MENU ***/

#nav {
	padding: 0;
	position:fixed;
	z-index:100;
}
#nav #menu_accordion {
	flex-direction: column;
	margin-top: 20px;
}
#nav #menu_accordion > .multi-collapse {
	width:100%;
}
#nav #menu_accordion h6 {
	display: block;
	width:100%;
	background:#4c9093;
	margin:0;
	text-transform: uppercase;
	font-weight: bold;
	border-bottom:none;
	transition: all .3s ease;
}
#nav #menu_accordion h6 a {
	color:#ffffff;
	width:100%;
	padding: .5em;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#nav #menu_accordion h6 a::after {
	content:"\f068";
	font-family:"Font Awesome 5 Free";
	font-size: .8em;
}
#nav #menu_accordion h6 a.collapsed::after {
	content:"\f067";
}
#nav #menu_accordion h6:hover {
	background:#373737;
}
#nav #menu_accordion .menu li,
#nav #menu_accordion .menu li a {
	width:100%;
}
#nav header {
	padding: 0 20px;
	text-align: center;
}
#nav header .login {
	margin: 15px 0;
}
#nav header .login .collapse.show, #nav header .login .collapsing {
	display: inline-block;
}
#nav .logo {
	background-color: #244975;
	border-radius: 0 0 20px 20px;
	padding: 10px 0 2px;
	width:80px;
	z-index:2;
	margin-top:-5px;
	position:absolute;
	margin-left:15px;
}
#nav .logo .subtitle {
	font-size: 1em;
	display: block;
	text-align: center;
}
#nav .logo img {
	max-width:60%;
	margin:0 auto;
}
#nav svg {
	fill: #fff;
	margin-right:5px;
}
#nav .menu {
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
}
#nav .menu li a {
	color: #fff;
	display: block;
	padding: 10px 0.8em;
	border-bottom: 1px solid #50a9b3;
	transition: ease 0.2s;
	font-size: .9em;
}
#nav .menu li:first-child a {
	border-top: 1px solid #50a9b3;
}
#nav .menu li a:hover, #nav .menu li a.active {
	color: #73c1ca;
	background-color: #fff;
}
#nav .menu li a:hover svg, #nav .menu li a.active svg {
	fill: #73c1ca;
}
@media screen and (min-width:768px) {
	#nav {
		padding-bottom:20px;
		height: 100vh;
		overflow-y: auto;
	}
	#nav .logo {
		margin:0 auto;
		width:100%;
		max-width: 150px;
		position: relative;
	}
	#nav .logo .subtitle {
		font-size: 1.3em;
		padding-bottom:5px;
	}
	#nav .menu {
		margin-top:0;
	}
	#nav header .login .collapse.show, #nav header .login .collapsing {
		display: block;
	}
}
#nav + section {
	margin-top:60px;
	margin-top:0;
}

@media screen and (max-width:768px) {
	#nav #menu_accordion {
		max-height: calc(100vh - 80px);
		overflow-y: auto;
	}
}

/*** TITLES ***/
.big-title {
	padding:20px 0;
	background-color:white;
	border-bottom:1px solid #e7e7e7;
	margin-top:58px;
}
.big-title h2 strong {
	margin: 0 15px 0 5px;
}
@media screen and (min-width:768px) {
	.big-title {
		margin-top:0;
		position:fixed;
		width:100%;
		z-index:100;
	}
}

/*** SUPPRIMER DES EQUIPES ***/
/* (commun page équipes et réservation) */
.delete-team {
	position: absolute;
	font-size:0.8em;
	color:#999;
	line-height: 1em;
}
.delete-team span {
	opacity:0;
	transition: 0.5s ease;
}
.delete-team:hover span {
	opacity:1;
}
.new-booking .delete-team {
	bottom:0;
	left:0;
}
.teams .delete-team {
	top:10px;
	right:10px;
}

/*** FILTRES ***/
/* Bulles de couleurs */
.fa-dot-circle-o {
    color:green;
}
.filter-course {
	width: auto!important;
}

/* Filter boxes */
.filter-status input[type="checkbox"],
.filter-status input[type="radio"] {
	display: none;
}
.filter-status input[type="checkbox"] + label:hover,
.filter-status input[type="radio"] + label:hover{
	cursor: pointer;
}
.filter-status input[type="checkbox"] + label,
.filter-status input[type="radio"] + label{
	background: white;
	border-radius: 5px;
	box-shadow: 0 0 2px #999;
	padding: .2rem .75rem;
	font-weight:300;
	min-width: 75px;
	margin:4px;
}
.filter-status.with-icons input[type="checkbox"] + label::before,
.filter-status.with-icons input[type="radio"] + label::before{
	content: '✖';
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.filter-status.with-icons input[type="checkbox"]:checked + label::before,
.filter-status.with-icons input[type="radio"]:checked + label::before {
	content: '✔';
}
.filter-status input[type="checkbox"]:checked + label,
.filter-status input[type="radio"]:checked + label {
	border: none;
}
.filter-status .check-yellow:checked + label {
	background: #faf86a;
}
.filter-status .check-green:checked + label {
	background: #9ce4c8;
}
.filter-status .check-orange:checked + label {
	background: #ffcb81;
}
.filter-status .check-black:checked + label {
	background: #c3c3c3;
}
.filter-status .check-aquablue:checked + label {
	background: #73c1ca;
}
.filter-status .check-red:checked + label {
	background: #ec4848;
}

/*** TABLES RESPONSIVE TRICK ***/
@media
only screen and (max-width: 768px) {

	/* Force table to not be like tables anymore */
	table.table-trick, .table-trick thead, .table-trick tbody, .table-trick th, .table-trick td, .table-trick tr {
		display: block;
	}

	/* Hide table headers (but not display: none;, for accessibility) */
	.table-trick thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}

	.table-trick th {
		text-align: center;
	}

	.table-trick tr {
		border: 1px solid #ccc;
		margin-bottom:10px;
	}

	.table-trick td {
		/* Behave  like a "row" */
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
	}

	.table-trick td:before {
		/* Now like a table he4152ader */
		display: inline-block;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		font-weight:bold;
	}
}

legend.required:not(.noasterisk):after,
label.required:not(.noasterisk):after{
	content:"*";
	color:red;
}

ul.status-legend li {
	display: inline;
	margin-right: 1rem;
} 

ul.status-legend.fc {
	display: inline-block;
	margin-right: 1rem;
}

.bootstrap-select{
	width: auto;
	margin-bottom: auto;
}

.event-agenda-team-1 .fc-event-main:after{
	content: "\f111";
}
.event-agenda-team-2 .fc-event-main:after,
.event-agenda-team-3 .fc-event-main:after,
.event-agenda-team-4 .fc-event-main:after{
	content: "\f005";
}
.event-agenda-team-1 > .fc-event-main:before{
	content:"1"
}
.event-agenda-team-2 > .fc-event-main:before{
	content:"2"
}
.event-agenda-team-3 > .fc-event-main:before{
	content:"3"
}
.event-agenda-team-4 > .fc-event-main:before{
	content:"4"
}
.dataTables_wrapper{
	width:100%;
}