/*
	FIX
*/
.btn {
	cursor: pointer;
}

.btn-dark {
	color: #fff !important; /* bug bootstrap ? */
}

.js-select-spec.text-danger option:not(.text-danger) {
    color: #6c757d !important;
}
.js-select-spec:not(.text-danger) option.text-danger {
    color: #dc3545 !important;
}
i.fa, i.fas {
    min-width: 20px;
}

/*
	LAYOUT
*/
body {
	/* Margin bottom by footer height */
	margin-bottom: 60px;
}

.container.wide {
	max-width: 1440px;
}

.v-stack {
	overflow-y: scroll;
	max-height: 70vh;
}

.img-center {
  display: block;
  margin: auto;
  max-width: 100%;
}
.img-table-thumb {
  max-width: 128px !important;
}

#fol-header-logo {
	max-height:80px;
}

#app-footer {
	position: fixed;
	bottom: 0;
	width: 100%;
	/* Set the fixed height of the footer here */
	height: 60px;
	z-index: 1048;
}

#notifications-bar {
	position: fixed;
	bottom: 0;
	left:0;
	width: 100%;
	z-index: 1049;	/* https://getbootstrap.com/docs/4.3/layout/overview/ 1050 = modal */
	margin-bottom:0;
	border-radius:0;
}

#fixed-ctrl-box {
	position:fixed;
    background: #fff;
	right:2rem;
	bottom:4rem;
	text-align:right;
    /* width: 150px; */
	z-index: 1030;
}

.cursor-pointer {
	cursor: pointer;
}

.display-none {
	display: none;
}

/*
	PAGE SCHOOL FORM
*/
#classroom-fieldset-model {
	display: none;
}

.classroom-form-fieldset-inner {
	padding: 1rem;
	border: 1px solid #ccc;
	border-radius: 4px;
}

#add-classroom-ctn {
	margin-top: 1rem;
	margin-left:0;
	margin-right:0;
	padding:0;
}

#add-classroom-ctn-inner {
	text-align: center;
	padding-top:4rem;
	padding-bottom:4rem;
}

#prop-table-ctn table th {
	border-bottom: 1px solid #ccc;
}
#prop-table-ctn table {
	border-bottom: 1px solid #444;
	margin-bottom: 1rem;
}
.false-input {
	width: 100%;
	height: calc(1.5em + .75rem + 2px);
	padding: .375rem .75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	border: 1px dashed #ced4da;
	border-radius: .25rem;
	color: #686868;
	background: #eee;
	font-style: italic;
}
option.text-danger:hover,
option.text-danger:focus,
option.text-danger:active {
	color:red !important;
}
.clickable {
    cursor:pointer;
}


/*
	TABLES
*/
.table td, .table th {
    padding: .5rem;
    vertical-align: middle;
}

table.datatable thead th {
	cursor: pointer;
}

/* table.datatable thead th:after { */
	/* font-family: "Font Awesome 5 Free"; */
	/* padding-left: 1rem; */
/* } */
/* table.datatable thead th.sorting_asc:after { */
    /* content: "\f106";	 */
/* } */
/* table.datatable thead th.sorting_desc:after { */
    /* content: "\f107";	 */
/* } */
	
	
.datepicker {
	width:320px !important;
}
.datepicker table {
	width:100% !important;
}
.datepicker th, 
.datepicker td {
	width: 12% !important;
}


/*
	BOOTSTRAP OVERRIDE
*/
.valid-tooltip,
.invalid-tooltip {
	line-height: 1 !important;
	font-size: .7rem !important;
	padding: .2rem .5rem !important;
	margin-top: 0 !important;
	top: auto;
}

/* problème d'affichage rencontré dans certains layouts seulement */
.valid-tooltip.tooltip-compat-prepend,
.invalid-tooltip.tooltip-compat-prepend {
	bottom: -1.1rem !important;
}

.page-item.active .page-link {
	z-index:auto;
}
textarea {
	min-height: 10rem;
}

/* custom input file */
.btn-file {
	position: relative;
	overflow: hidden;
  cursor: pointer;
}
.btn-file input[type=file] {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 100%;
	min-height: 100%;
	font-size: 100px;
	text-align: right;
	filter: alpha(opacity=0);
	opacity: 0;
	outline: none;
	background: white;
	cursor: inherit;
	display: block;
}

/* spectacles */

.card-img-spectacle {
	max-height: 480px;
	width: auto;	
	margin: auto;
	display: block;
}
.card-img-spectacle-ctn {
	height: 240px;
	overflow: hidden;
}
.modal-img-spectacle {
	width:100%;
}
.modal-body-spectacle {
	padding: 0;
}
.modal-body-spectacle h5,
.modal-body-spectacle p {
	padding: 0 1rem;
}
.card-text-spectacle {
	position: relative;
	top:0;
	left:0;	
	height: 120px;
	max-height: 120px;
	overflow: hidden;
}
.fade-content {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 120px;
	background-image: linear-gradient(to bottom, transparent 50%, white 95%);
}

/* repr */
.select-list {
	height: 45vh;
	overflow-y:scroll;
}
.select-list-item {
	cursor:pointer;
}

/* ANIMATE */

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.animated.fast {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}

.animated.faster {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
}

@media (print), (prefers-reduced-motion) {
  .animated {
    -webkit-animation: unset !important;
    animation: unset !important;
    -webkit-transition: none !important;
    transition: none !important;
  }
}

@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}




/* 
	PRINT 
*/
.no-print {
	display: block;
}
.only-print {
	display: none !important;
}

@media print {
	.no-print {
		display: none !important;
	}
	.only-print {
		display: block !important;
	}
	
	#app-header, 
	#app-footer,
	button, .btn,
	button[type=submit], 
	input[type=submit]	{
		display:none !important;
	}
	
	.container {
		max-width: 100%;
	}

}

.pedago-ctn {
  width: 100%; 
  margin: auto;
  padding: 4rem;
}
#pedago-loaded, #pedago-unloaded {
  width:100%;
}
#pedago-unloaded {
  opacity:.5;
}

.logo-part-for-form .close.detach-logo,
.logo-part-for-form .close.detach-logo-top {
  position: absolute;
  right: 4px;
  top: 4px;
  background: white;
  opacity: 1;
  width: 20px;
  height: 20px;
  border-radius: 20px;
  font-size: 16px;
  text-align: center;
  padding-bottom: 2px;
}
.logo-part-for-form.logo-select .close.detach-logo {
  display:none;
}
.logo-part-for-form.logo-select {
  cursor: pointer;
}
.partenaire-title,
#programmation-title {
    display:inline-block;
    vertical-align:middle;
}
.partenaire-title-img {
    height: 80px;
}

.welcome-school-logo {
    height:120px;
}

/*
repr table colors
*/
.bg-color-repr-0 {background:#ffffff !important} .border-color-repr-0 {border: 2px solid #ffffff !important} .tr-color-repr-0 td {border-bottom: 4px solid #ffffff !important} .bg-color-repr-1 {background:#ffe934 !important} .border-color-repr-1 {border: 2px solid #ffe934 !important} .tr-color-repr-1 td {border-bottom: 4px solid #ffe934 !important} .bg-color-repr-2 {background:#fff14c !important} .border-color-repr-2 {border: 2px solid #fff14c !important} .tr-color-repr-2 td {border-bottom: 4px solid #fff14c !important} .bg-color-repr-3 {background:#fff964 !important} .border-color-repr-3 {border: 2px solid #fff964 !important} .tr-color-repr-3 td {border-bottom: 4px solid #fff964 !important} .bg-color-repr-4 {background:#fff976 !important} .border-color-repr-4 {border: 2px solid #fff976 !important} .tr-color-repr-4 td {border-bottom: 4px solid #fff976 !important} .bg-color-repr-5 {background:#fff988 !important} .border-color-repr-5 {border: 2px solid #fff988 !important} .tr-color-repr-5 td {border-bottom: 4px solid #fff988 !important} .bg-color-repr-6 {background:#fff996 !important} .border-color-repr-6 {border: 2px solid #fff996 !important} .tr-color-repr-6 td {border-bottom: 4px solid #fff996 !important} .bg-color-repr-7 {background:#fff9a4 !important} .border-color-repr-7 {border: 2px solid #fff9a4 !important} .tr-color-repr-7 td {border-bottom: 4px solid #fff9a4 !important} .bg-color-repr-8 {background:#95c125 !important} .border-color-repr-8 {border: 2px solid #95c125 !important} .tr-color-repr-8 td {border-bottom: 4px solid #95c125 !important} .bg-color-repr-9 {background:#a3cf3d !important} .border-color-repr-9 {border: 2px solid #a3cf3d !important} .tr-color-repr-9 td {border-bottom: 4px solid #a3cf3d !important} .bg-color-repr-10 {background:#b1d955 !important} .border-color-repr-10 {border: 2px solid #b1d955 !important} .tr-color-repr-10 td {border-bottom: 4px solid #b1d955 !important} .bg-color-repr-11 {background:#bfe36d !important} .border-color-repr-11 {border: 2px solid #bfe36d !important} .tr-color-repr-11 td {border-bottom: 4px solid #bfe36d !important} .bg-color-repr-12 {background:#cdeb7f !important} .border-color-repr-12 {border: 2px solid #cdeb7f !important} .tr-color-repr-12 td {border-bottom: 4px solid #cdeb7f !important} .bg-color-repr-13 {background:#d7f391 !important} .border-color-repr-13 {border: 2px solid #d7f391 !important} .tr-color-repr-13 td {border-bottom: 4px solid #d7f391 !important} .bg-color-repr-14 {background:#e1fb9f !important} .border-color-repr-14 {border: 2px solid #e1fb9f !important} .tr-color-repr-14 td {border-bottom: 4px solid #e1fb9f !important} .bg-color-repr-15 {background:#e9fbad !important} .border-color-repr-15 {border: 2px solid #e9fbad !important} .tr-color-repr-15 td {border-bottom: 4px solid #e9fbad !important} .bg-color-repr-16 {background:#638ab7 !important} .border-color-repr-16 {border: 2px solid #638ab7 !important} .tr-color-repr-16 td {border-bottom: 4px solid #638ab7 !important} .bg-color-repr-17 {background:#7598c5 !important} .border-color-repr-17 {border: 2px solid #7598c5 !important} .tr-color-repr-17 td {border-bottom: 4px solid #7598c5 !important} .bg-color-repr-18 {background:#87a6cf !important} .border-color-repr-18 {border: 2px solid #87a6cf !important} .tr-color-repr-18 td {border-bottom: 4px solid #87a6cf !important} .bg-color-repr-19 {background:#95b4d9 !important} .border-color-repr-19 {border: 2px solid #95b4d9 !important} .tr-color-repr-19 td {border-bottom: 4px solid #95b4d9 !important} .bg-color-repr-20 {background:#a3c2e3 !important} .border-color-repr-20 {border: 2px solid #a3c2e3 !important} .tr-color-repr-20 td {border-bottom: 4px solid #a3c2e3 !important} .bg-color-repr-21 {background:#b1d0eb !important} .border-color-repr-21 {border: 2px solid #b1d0eb !important} .tr-color-repr-21 td {border-bottom: 4px solid #b1d0eb !important} .bg-color-repr-22 {background:#bfdaf3 !important} .border-color-repr-22 {border: 2px solid #bfdaf3 !important} .tr-color-repr-22 td {border-bottom: 4px solid #bfdaf3 !important} .bg-color-repr-23 {background:#cde4fb !important} .border-color-repr-23 {border: 2px solid #cde4fb !important} .tr-color-repr-23 td {border-bottom: 4px solid #cde4fb !important} .bg-color-repr-24 {background:#f86572 !important} .border-color-repr-24 {border: 2px solid #f86572 !important} .tr-color-repr-24 td {border-bottom: 4px solid #f86572 !important} .bg-color-repr-25 {background:#f87784 !important} .border-color-repr-25 {border: 2px solid #f87784 !important} .tr-color-repr-25 td {border-bottom: 4px solid #f87784 !important} .bg-color-repr-26 {background:#f88992 !important} .border-color-repr-26 {border: 2px solid #f88992 !important} .tr-color-repr-26 td {border-bottom: 4px solid #f88992 !important} .bg-color-repr-27 {background:#f897a0 !important} .border-color-repr-27 {border: 2px solid #f897a0 !important} .tr-color-repr-27 td {border-bottom: 4px solid #f897a0 !important} .bg-color-repr-28 {background:#f8a5ae !important} .border-color-repr-28 {border: 2px solid #f8a5ae !important} .tr-color-repr-28 td {border-bottom: 4px solid #f8a5ae !important} .bg-color-repr-29 {background:#f8b3bc !important} .border-color-repr-29 {border: 2px solid #f8b3bc !important} .tr-color-repr-29 td {border-bottom: 4px solid #f8b3bc !important} .bg-color-repr-30 {background:#f8c1ca !important} .border-color-repr-30 {border: 2px solid #f8c1ca !important} .tr-color-repr-30 td {border-bottom: 4px solid #f8c1ca !important} .bg-color-repr-31 {background:#f8cfd4 !important} .border-color-repr-31 {border: 2px solid #f8cfd4 !important} .tr-color-repr-31 td {border-bottom: 4px solid #f8cfd4 !important} .bg-color-repr-32 {background:#ff8a21 !important} .border-color-repr-32 {border: 2px solid #ff8a21 !important} .tr-color-repr-32 td {border-bottom: 4px solid #ff8a21 !important} .bg-color-repr-33 {background:#ff9839 !important} .border-color-repr-33 {border: 2px solid #ff9839 !important} .tr-color-repr-33 td {border-bottom: 4px solid #ff9839 !important} .bg-color-repr-34 {background:#ffa651 !important} .border-color-repr-34 {border: 2px solid #ffa651 !important} .tr-color-repr-34 td {border-bottom: 4px solid #ffa651 !important} .bg-color-repr-35 {background:#ffb469 !important} .border-color-repr-35 {border: 2px solid #ffb469 !important} .tr-color-repr-35 td {border-bottom: 4px solid #ffb469 !important} .bg-color-repr-36 {background:#ffc27b !important} .border-color-repr-36 {border: 2px solid #ffc27b !important} .tr-color-repr-36 td {border-bottom: 4px solid #ffc27b !important} .bg-color-repr-37 {background:#ffd08d !important} .border-color-repr-37 {border: 2px solid #ffd08d !important} .tr-color-repr-37 td {border-bottom: 4px solid #ffd08d !important} .bg-color-repr-38 {background:#ffda9b !important} .border-color-repr-38 {border: 2px solid #ffda9b !important} .tr-color-repr-38 td {border-bottom: 4px solid #ffda9b !important} .bg-color-repr-39 {background:#ffe4a9 !important} .border-color-repr-39 {border: 2px solid #ffe4a9 !important} .tr-color-repr-39 td {border-bottom: 4px solid #ffe4a9 !important} .bg-color-repr-40 {background:#cf54a7 !important} .border-color-repr-40 {border: 2px solid #cf54a7 !important} .tr-color-repr-40 td {border-bottom: 4px solid #cf54a7 !important} .bg-color-repr-41 {background:#d96cb5 !important} .border-color-repr-41 {border: 2px solid #d96cb5 !important} .tr-color-repr-41 td {border-bottom: 4px solid #d96cb5 !important} .bg-color-repr-42 {background:#e37ec3 !important} .border-color-repr-42 {border: 2px solid #e37ec3 !important} .tr-color-repr-42 td {border-bottom: 4px solid #e37ec3 !important} .bg-color-repr-43 {background:#eb90d1 !important} .border-color-repr-43 {border: 2px solid #eb90d1 !important} .tr-color-repr-43 td {border-bottom: 4px solid #eb90d1 !important} .bg-color-repr-44 {background:#f39edb !important} .border-color-repr-44 {border: 2px solid #f39edb !important} .tr-color-repr-44 td {border-bottom: 4px solid #f39edb !important} .bg-color-repr-45 {background:#fbace5 !important} .border-color-repr-45 {border: 2px solid #fbace5 !important} .tr-color-repr-45 td {border-bottom: 4px solid #fbace5 !important} .bg-color-repr-46 {background:#fbbaed !important} .border-color-repr-46 {border: 2px solid #fbbaed !important} .tr-color-repr-46 td {border-bottom: 4px solid #fbbaed !important} .bg-color-repr-47 {background:#fbc8f5 !important} .border-color-repr-47 {border: 2px solid #fbc8f5 !important} .tr-color-repr-47 td {border-bottom: 4px solid #fbc8f5 !important} .bg-color-repr-48 {background:#20e9db !important} .border-color-repr-48 {border: 2px solid #20e9db !important} .tr-color-repr-48 td {border-bottom: 4px solid #20e9db !important} .bg-color-repr-49 {background:#38f1e5 !important} .border-color-repr-49 {border: 2px solid #38f1e5 !important} .tr-color-repr-49 td {border-bottom: 4px solid #38f1e5 !important} .bg-color-repr-50 {background:#50f9ed !important} .border-color-repr-50 {border: 2px solid #50f9ed !important} .tr-color-repr-50 td {border-bottom: 4px solid #50f9ed !important} .bg-color-repr-51 {background:#68f9f5 !important} .border-color-repr-51 {border: 2px solid #68f9f5 !important} .tr-color-repr-51 td {border-bottom: 4px solid #68f9f5 !important} .bg-color-repr-52 {background:#7af9fd !important} .border-color-repr-52 {border: 2px solid #7af9fd !important} .tr-color-repr-52 td {border-bottom: 4px solid #7af9fd !important} .bg-color-repr-53 {background:#8cf9fd !important} .border-color-repr-53 {border: 2px solid #8cf9fd !important} .tr-color-repr-53 td {border-bottom: 4px solid #8cf9fd !important} .bg-color-repr-54 {background:#9af9fd !important} .border-color-repr-54 {border: 2px solid #9af9fd !important} .tr-color-repr-54 td {border-bottom: 4px solid #9af9fd !important} .bg-color-repr-55 {background:#a8f9fd !important} .border-color-repr-55 {border: 2px solid #a8f9fd !important} .tr-color-repr-55 td {border-bottom: 4px solid #a8f9fd !important} .bg-color-repr-56 {background:#929292 !important} .border-color-repr-56 {border: 2px solid #929292 !important} .tr-color-repr-56 td {border-bottom: 4px solid #929292 !important} .bg-color-repr-57 {background:#a0a0a0 !important} .border-color-repr-57 {border: 2px solid #a0a0a0 !important} .tr-color-repr-57 td {border-bottom: 4px solid #a0a0a0 !important} .bg-color-repr-58 {background:#aeaeae !important} .border-color-repr-58 {border: 2px solid #aeaeae !important} .tr-color-repr-58 td {border-bottom: 4px solid #aeaeae !important} .bg-color-repr-59 {background:#bcbcbc !important} .border-color-repr-59 {border: 2px solid #bcbcbc !important} .tr-color-repr-59 td {border-bottom: 4px solid #bcbcbc !important} .bg-color-repr-60 {background:#cacaca !important} .border-color-repr-60 {border: 2px solid #cacaca !important} .tr-color-repr-60 td {border-bottom: 4px solid #cacaca !important} .bg-color-repr-61 {background:#d4d4d4 !important} .border-color-repr-61 {border: 2px solid #d4d4d4 !important} .tr-color-repr-61 td {border-bottom: 4px solid #d4d4d4 !important} .bg-color-repr-62 {background:#dedede !important} .border-color-repr-62 {border: 2px solid #dedede !important} .tr-color-repr-62 td {border-bottom: 4px solid #dedede !important} .bg-color-repr-63 {background:#e8e8e8 !important} .border-color-repr-63 {border: 2px solid #e8e8e8 !important} .tr-color-repr-63 td {border-bottom: 4px solid #e8e8e8 !important} 