/*
Changement overwrite website
*/
div.cf:not(.cf-inscription) a {
	font-weight: unset;
	text-decoration: unset;
	font-weight: 400;
}
div.cf:not(.cf-inscription) .btn {
	margin-top: 0;
	border-radius: 0px;
	white-space: unset;
	font-weight: 700;
}
div.cf:not(.cf-inscription) .btn.btn-modal,
div.cf:not(.cf-inscription) .btn:not(.btnRed):not(.btnGreen) {
	padding: 6px 12px;
	color: unset;
	font-size: 14px;
	font-weight: 400;
}
div.cf:not(.cf-inscription) h1 {
	font-family: open-sans, sans-serif;
	font-weight: 700 !important;
	font-size: 36px;
}
div.cf:not(.cf-inscription) h2 {
	font-family: open-sans, sans-serif;
	font-weight: 700 !important;
	font-size: 30px;
}
div.cf:not(.cf-inscription) h3 {
	font-family: open-sans, sans-serif;
	font-weight: 700 !important;
	font-size: 18px;
}
div.cf:not(.cf-inscription) .panel-body {
	padding: 20px 15px !important;
}
div.cf:not(.cf-inscription) .panel.panel-default {
	border-color: #1c3e73 !important;
	border-radius: 4px !important;
}
div.cf:not(.cf-inscription) .panel-heading {
	background: #1c3e73 !important;
	border-color: #1c3e73 !important;
}
div.cf:not(.cf-inscription) .panel-body .panel-default {
	border-color: #00a15e !important;
}
div.cf:not(.cf-inscription) .panel-body .panel-heading {
	background: #00a15e !important;
	border-color: #00a15e !important;
	padding: 10px 15px !important;
}
div.cf:not(.cf-inscription) {
	font-family: open-sans, sans-serif;
}

.equal {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
}
.align-self-start {
	align-self: start;
}
.align-self-end {
	align-self: end;
}

#frmInscriptionFormulaire section.tab {
	display: none;
}
#frmInscriptionFormulaire section.tab.personal-info {
	display: block;
}
#frmInscriptionFormulaire section.tab a.upload-btn {
	color: #fff;
}
#frmInscriptionFormulaire div.buttons input[type="button"] {
	display: none;
}
#frmInscriptionFormulaire div.buttons input[type="button"].next {
	display: inline-block;
}
#frmInscriptionFormulaire div.buttons input[type="submit"] {
	display: none;
}
#frmInscriptionFormulaire div.notes {
	padding-left: 15px;
	margin-top: 20px;
	font-style: italic;
}
#frmInscriptionFormulaire div.notes span.red {
	position: absolute;
	font-family: "FontAwesome";
	font-weight: normal;
	font-size: 11px;
	content: "\f069";
	color: #bc2929;
	margin-left: -15px;
}
#frmInscriptionDocument input[type="file"],
#frmInscriptionDocument2 input[type="file"] {
	height: auto;
}
#frmInscriptionDocument div.progress,
#frmInscriptionDocument2 div.progress {
	margin: 10px 0;
	background-color: #f5f5f5;
}
#frmInscriptionDocument div.bar,
#frmInscriptionDocument2 div.bar {
	height: 18px;
	background: #00a15e;
}
#frmInscriptionFormulaire #credential_recognition_div select {
	transition: background-color 1s ease;
	background-color: #ffeeba;
}
#frmInscriptionFormulaire #credential_recognition_div.shown select {
	background-color: #fff;
}

/*
RESULT TABLE
*/
.cf table.table tr.inactive td {
	text-decoration: line-through;
}
.cf table.table tr.inactive td:has(a) {
	text-decoration: none;
}

/****
PROGRESS BAR
****/
.meter {
	height: 26px;
	position: relative;
	background: rgb(182, 182, 182);
	-moz-border-radius: 13px;
	-webkit-border-radius: 13px;
	border-radius: 13px;
	padding: 0;
	box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.3);
	box-sizing: content-box;
}
.meter > span {
	display: block;
	height: 100%;
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
	background-color: rgb(25, 55, 101);
	background-image: linear-gradient(center bottom, rgb(25, 55, 101) 37%, rgb(93, 135, 199) 69%);
	box-shadow:
		inset 0 2px 9px rgba(255, 255, 255, 0.3),
		inset 0 -2px 6px rgba(0, 0, 0, 0.4);
	position: relative;
	overflow: hidden;
}
.meter > span:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-image: linear-gradient(
		-45deg,
		rgba(255, 255, 255, 0.1) 25%,
		transparent 25%,
		transparent 50%,
		rgba(255, 255, 255, 0.1) 50%,
		rgba(255, 255, 255, 0.1) 75%,
		transparent 75%,
		transparent
	);
	z-index: 1;
	background-size: 50px 50px;
	animation: move 2s linear infinite;
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
	overflow: hidden;
}
.meter > span:after,
.animate > span > span {
	animation: progressanim 2s linear infinite;
}
@keyframes progressanim {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: 50px 50px;
	}
}

/****
INTRANET | INSCRIPTION
****/

div.cf.user ul.status {
	padding: 0;
}
div.cf.user ul.status li::before {
	display: none;
}
div.cf.user ul.status li span {
	margin-right: 8px;
}
div.cf.user ul.status li span.completed {
	color: #00a15e;
}

div.cf.cf-inscription section.destination input.ccm-input-date {
	width: auto;
}

div.cf.intranet-inscription div.immigrant-info-wrapper {
	background-color: #dedede;
	padding: 10px;
	border-radius: 4px;
}
div.cf.intranet-inscription div.immigrant-info-wrapper div.more-info {
	margin-top: 10px;
	text-align: right;
}
div.cf.intranet-inscription div.immigrant-info-wrapper div.more-info span.closePanel {
	display: none;
}
div.cf.intranet-inscription div.immigrant-base-info {
	display: flex;
	flex-wrap: wrap;
	background-color: #dedede;
}
div.cf.intranet-inscription div.immigrant-base-info div.info {
	flex: 1 0 18%;
	margin: 0 7.5px;
}
div.cf.intranet-inscription div.immigrant-base-info div.info:first-child {
	margin-left: 0;
}
div.cf.intranet-inscription div.immigrant-full-info {
	margin-top: 15px;
}
div.cf.intranet-inscription div.immigrant-full-info ul.nav-pills {
	border: none;
}
div.cf.intranet-inscription div.immigrant-full-info ul.nav-pills li a {
	background-color: #fff;
}
div.cf.intranet-inscription div.immigrant-full-info ul.nav-pills li.active a {
	background-color: #193765;
}
div.cf.intranet-inscription div.immigrant-full-info div.tab-content {
	padding-left: 10px;
	padding-right: 10px;
	background-color: #fff;
}
div.cf.intranet-inscription div.immigrant-base-info div.info:last-child {
	margin-right: 0;
}
div.cf.intranet-inscription div.panel-heading {
	background-color: #1c3e73;
	border-color: #1c3e73;
}
div.cf.intranet-inscription div.panel-heading div.panel-title a {
	color: #fff !important;
	text-transform: uppercase;
}
div.cf.intranet-inscription div.panel-body {
	padding-top: 20px;
	padding-bottom: 20px;
}
div.cf.intranet-inscription div.panel-body h3 {
	color: #fff;
	margin: 0;
}
div.cf.intranet-inscription div.panel-body div.panel-heading {
	background-color: #00a15e;
	border-color: #00a15e;
}
div.cf.intranet-inscription a.iconAdd,
div.cf.intranet-inscription a.iconDelete {
	position: relative;
	padding-left: 23px;
}
div.cf.intranet-inscription a.iconAdd::before {
	position: absolute;
	font-family: FontAwesome;
	content: "\f067";
	line-height: 20px;
	left: 0;
	color: #000;
	top: 0;
	height: 20px;
	width: 20px;
	z-index: 1;
}
div.cf.intranet-inscription a.iconDelete::before {
	position: absolute;
	font-family: FontAwesome;
	content: "\f068";
	line-height: 20px;
	left: 0;
	color: #000;
	top: 0;
	height: 20px;
	width: 20px;
	z-index: 1;
}
div.cf.intranet-inscription h2 span.smaller {
	font-size: 16px;
	line-height: 16px;
	vertical-align: middle;
}
div.cf.intranet-inscription div.buttons,
div.cf.cf-inscription div.buttons {
	margin-top: 15px;
}
div.cf.intranet-inscription div.notes {
	padding-left: 15px;
	margin-top: 20px;
	font-style: italic;
}
div.cf.intranet-inscription div.notes span.red {
	position: absolute;
	font-family: "FontAwesome";
	font-weight: normal;
	font-size: 11px;
	content: "\f069";
	color: #bc2929;
	margin-left: -15px;
}
div.cf.intranet-inscription .font-normal {
	font-weight: 400;
}
div.cf.intranet-inscription div.subStatus-wrapper {
	padding-left: 25px;
	margin-bottom: 0;
}
div.cf.intranet-inscription div.subStatus-wrapper.status-date-wrapper {
	margin-bottom: 5px;
}
div.cf.intranet-inscription div.checkbox-inline label,
div.cf.intranet-inscription div.radio-inline label {
	font-weight: 400;
}

/***
PROFIL
***/
div.cf.profile ul.nav-pills {
	padding: 0;
	margin: 0;
	border-bottom: 1px solid #193765;
}
div.cf.profile ul.nav-pills li {
	margin-top: 0;
}
div.cf.profile ul.nav-pills li::before {
	display: none;
}
div.cf.profile ul.nav-pills li a {
	border-radius: 4px 4px 0 0;
	color: #193765;
}
div.cf.profile ul.nav-pills li.active a {
	background-color: #193765;
	color: #fff;
}
div.cf.profile div.tab-content {
	padding: 25px 0;
}
div.cf.profile div.checkbox-inline label {
	font-weight: 400;
}
div.cf.profile div.progress,
div.cf.user div.progress,
.modal-dialog div.progress {
	margin-top: 10px;
	margin-bottom: 10px;
}
div.cf.profile div.files a::before,
div.cf.user div.files a::before,
.modal-dialog div.files a::before {
	content: "\f016";
	display: inline-block;
	font: normal normal normal 16px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0, 0);
	width: 20px;
	text-align: right;
	margin-right: 10px;
}
div.cf.profile div.buttons input[type="button"] {
	display: none;
}
div.cf.profile div.buttons input[type="button"].next {
	display: inline-block;
}
div.cf.profile div.buttons input[type="submit"] {
	display: none;
}
div.cf.profile div.notes {
	padding-left: 15px;
	margin-top: 20px;
	font-style: italic;
}
div.cf.profile div.notes span.red {
	position: absolute;
	font-family: "FontAwesome";
	font-weight: normal;
	font-size: 11px;
	content: "\f069";
	color: #bc2929;
	margin-left: -15px;
}
div.cf.profile div.history-bt {
	margin-top: 20px;
}
div.cf.profile div.print-bt {
	margin-top: 10px;
}
/***
RAPPORTS
***/
div.cf.reports div.dates-filter {
	float: left;
	margin-right: 15px;
	width: 100%;
}
div.cf.reports div.dates-filter .form-control {
	width: 100% !important;
}
div.cf.reports div.checkbox-inline label {
	font-weight: 400;
}
div.cf.reports div.fields-selection {
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
}
div.cf.reports div.results {
	margin: 30px 0 0;
}
div.cf.reports select option:disabled {
	color: #ccc;
}

/***
FORMATIONS
***/
div.cf.formation ul.nav-pills {
	padding: 0;
	margin: 0;
	border-bottom: 1px solid #193765;
}
div.cf.formation ul.nav-pills li {
	margin-top: 0;
}
div.cf.formation ul.nav-pills li::before {
	display: none;
}
div.cf.formation ul.nav-pills li a {
	border-radius: 4px 4px 0 0;
	color: #193765;
}
div.cf.formation ul.nav-pills li.active a {
	background-color: #193765;
	color: #fff;
}
div.cf.formation div.tab-content {
	padding: 25px 0;
}

div.cf.formation div.formation-progress {
	margin: 0 0 30px;
}
div.cf.formation div.completed-formation {
	margin: 0 0 10px;
}
div.cf.formation div.progressbar {
	margin: 0 0 10px;
}
div.cf.formation div.formations-list {
	display: flex;
	flex-wrap: wrap;
}
div.cf.formation div.formations-list div.formation {
	flex: 0 0 100%;
	margin: 0 0px 20px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}
div.cf.formation div.formations-list div.formation div.formation-img {
	padding-bottom: 56.25%;
	background-size: cover;
	background-position: 50% 50%;
}
div.cf.formation div.formations-list div.formation div.formation-desc {
	padding: 0 15px 15px;
}
div.cf.formation div.formations-list div.formation div.formation-desc {
	padding: 0 15px 15px;
}
div.cf.formation div.formations-list div.formation a {
	color: #000;
}
div.cf.formation div.formations-list div.formation a:hover {
	color: #000;
}
div.cf.formation div.formations-list div.formation a:hover h3 {
	text-decoration: underline;
}

/***
WEBINAIRES
***/
div.cf.webinaire div.webinaires-list {
	display: flex;
	flex-wrap: wrap;
}
div.cf.webinaire div.webinaires-list div.webinaire {
	width: 100%;
	padding-bottom: 40px;
	display: flex;
}
div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-img {
	display: none;
	width: 100%;
	max-width: 600px;
	height: auto;
	aspect-ratio: 6/4;
	background-size: cover;
	background-position: 50% 50%;
	background-color: #193765;
}
div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-desc {
	padding: 20px 25px 30px;
	width: 100%;
	background-color: #fff;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	border-left: 5px solid #ffc43f;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
}
div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-desc a {
	background-color: #00a15e;
	align-self: flex-end;
	border-radius: 0;
	padding: 8px 25px 10px;
	color: #fff;
	font-weight: 900;
}
div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-desc a.btn-red {
	background-color: #bc2929;
	border-color: #bc2929;
}
/* div.cf.webinaire div.webinaire div.webinaire-info h3 { font-size: 24px; } */
div.cf.webinaire div.webinaire div.webinaire-info span.info {
	display: block;
	position: relative;
}
div.cf.webinaire div.webinaire div.webinaire-info span.info::before {
	display: inline-block;
	font-family: FontAwesome;
	font-weight: 400;
	padding: 0 15px 0 5px;
	width: 35px;
	text-align: center;
}
div.cf.webinaire div.webinaire div.webinaire-info span.date::before {
	content: "\f133";
}
div.cf.webinaire div.webinaire div.webinaire-info span.time::before {
	content: "\f017";
}
div.cf.webinaire div.webinaire div.webinaire-info span.category::before {
	content: "\f02b";
}
div.cf.webinaire div.webinaire div.webinaire-info span.person::before {
	content: "\f007";
}
div.cf.webinaire div.webinaire div.webinaire-img {
	width: 100%;
	max-width: 450px;
	height: auto;
	aspect-ratio: 6/4;
	background-size: cover;
	background-position: 50% 50%;
	background-color: #193765;
}
div.cf.webinaire div.webinaire button,
div.cf.webinaire div.webinaire a.btnGreen {
	width: 100%;
	margin-top: 25px;
	max-width: 450px;
}
div.cf.webinaire div.webinaire iframe {
	border: none;
	aspect-ratio: 16 / 9;
	width: 100%;
}
div.cf.webinaire div.pagination {
	width: 100%;
}
div.cf.webinaire div.pagination p {
	text-align: center;
	margin: 5px;
}
div.cf.webinaire div.pagination .dataTables_paginate {
	text-align: center;
}
div.cf.webinaire div.pagination .dataTables_paginate ul {
	margin: 0;
	padding: 0;
}
div.cf.webinaire div.pagination .dataTables_paginate ul li::before {
	display: none;
}
div.cf.webinaire div.search-filters #frmFilterWebinaires {
	width: fit-content;
}
div.cf.webinaire div.search-filters #frmFilterWebinaires .ccm-input-text {
	min-width: 290px;
}
div.cf.webinaire div.search-filters #frmFilterWebinaires div.checkboxes {
	text-align: center;
}
div.cf.webinaire div.search-filters #frmFilterWebinaires div.checkboxes .checkbox-inline {
	margin: 0 15px;
}

/***
FOIRE D'EMPLOI
***/
div.cf.foire-emploi div.tonik-youtube-gallery h2 {
	margin: 30px 0 10px 0;
}
div.cf.foire-emploi div.notes {
	margin: 20px 0;
}
div.cf.foire-emploi div.notes span.red {
	color: #bc2929;
	font-weight: 700;
}
div.cf.foire-emploi #inscriptionFoireEmploi .fileinput-button {
	position: relative;
	overflow: hidden;
	display: inline-block;
	margin-bottom: 15px;
}
div.cf.foire-emploi #inscriptionFoireEmploi .fileinput-button input {
	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
	opacity: 0;
	-ms-filter: "alpha(opacity=0)";
	font-size: 200px !important;
	direction: ltr;
	cursor: pointer;
}

/***
LIAISON DE COMPTES
***/
div.cf.liaison div.search-results {
	margin-top: 20px;
}
div.cf.liaison div.dates-filter {
	float: left;
	margin-right: 15px;
}
div.cf.liaison div.checkbox-inline label {
	font-weight: 400;
}
div.cf.liaison div.fields-selection {
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
}
div.cf.liaison div.results {
	margin: 30px 0 0;
}

/***
ASIDE
***/
div.cf aside nav {
	background-color: #193765;
	color: #fff;
	padding: 30px;
}
div.cf aside nav ul {
	border: 3px solid #fff;
	padding: 30px;
	list-style: none;
}
div.cf aside nav ul li::before {
	display: none !important;
}

div.cf aside nav ul li a {
	color: #fff;
}

div.cf aside nav ul li.selected a {
	font-weight: 700;
}
div.cf aside nav ul li a:hover {
	text-decoration: underline;
	color: #fff;
}
div.cf aside nav ul ul {
	border: none;
	margin: 4px 0;
	padding: 5px 0px 5px 10px;
	font-size: 90%;
}
div.cf aside nav ul ul {
}

/* FORM ELEMENTS */
div.cf div.form-group {
	margin-bottom: 20px;
	vertical-align: top;
}
div.cf div.form-group label {
	display: inline-block;
	max-width: 100%;
	margin-bottom: 5px;
	font-weight: 700;
}
div.cf div.form-group .form-control,
div.cf div.form-group .form-select {
	height: 34px;
	font-size: 16px;
	line-height: 1.42857143;
	color: #000;
	background-color: #fff;
	background-image: none;
	border-radius: 0;
	box-shadow: none;
	width: 100%;
}
div.cf div.form-group .form-control:disabled,
div.cf div.form-group .form-select:disabled {
	background-color: #dfdfdf;
	cursor: not-allowed;
	color: #555;
}
div.cf div.form-group .dataTables_filter .form-control,
div.cf div.form-group .dataTables_filter .form-select {
	width: unset;
}
div.cf div.form-group .form-control[readonly],
div.cf div.form-group .form-select[readonly] {
	background-color: #dfdfdf;
	opacity: 1;
	color: #555;
}
div.cf div.form-group select,
div.cf div.form-group textarea {
	border-radius: 0;
	box-shadow: none;
}
div.cf div.form-group .fileinput-button {
	display: flex;
	width: max-content;
}
div.cf div.form-group .fileinput-button i {
	margin-right: 15px;
}
div.cf div.form-group .form-file-progress {
	display: flex;
	align-items: center;
	gap: 15px;
}
div.cf div.form-group #files p span + br {
	display: none;
}
div.cf div.form-group .upload-btn {
	margin-top: 0;
	padding: 3px 12px 2px;
	margin-left: 15px;
	font-size: 16px;
}
div.cf div.form-group .upload-btn:hover {
	color: #00a15e !important;
}
div.cf div.form-group .progress {
	height: 5px;
	width: 300px;
	background-color: #dfdfdf;
	box-shadow: none;
	border-radius: 0;
	margin-top: 0;
}
div.cf div.form-group .progress .progress-bar {
	background-color: #00a15e !important;
}
div.cf div.radio-inline,
div.cf div.checkbox-inline {
	padding-left: 0;
}
div.cf legend {
	border: none;
	margin-bottom: 10px;
	font-weight: 700;
}
div.cf fieldset.section > legend {
	font-size: 20px;
}
div.cf .checkbox-inline + .checkbox-inline,
.radio-inline + .radio-inline {
	margin-left: 30px;
}
div.cf span {
	font-size: 16px;
}
div.cf span.error {
	display: block;
	color: #bc2929;
}
div.cf-inscription .btn.ccm-input-submit {
	float: right;
}

div.cf .form-inline .form-group label {
	display: block;
}

div.cf input[type="text"]:not(#phone):not(#partner_phone),
div.cf input[type="number"],
div.cf input[type="email"],
div.cf input[type="password"],
div.cf select {
	border: 1px solid #dfdfdf !important;
	padding: 6px 12px !important;
}
div.cf input[type="text"]:not(#phone):not(#partner_phone):focus,
div.cf input[type="number"]:focus,
div.cf input[type="email"]:focus,
div.cf input[type="password"]:focus,
div.cf select:focus {
	border: 1px solid #000 !important;
	outline: none;
}
div.cf input[type="text"]#phone,
div.cf input[type="text"]#partner_phone {
	border: 1px solid #dfdfdf !important;
}
div.cf textarea,
textarea {
	border: 1px solid #dfdfdf !important;
	padding: 6px 12px !important;
	width: 100%;
}
div.cf input[type="checkbox"],
div.cf input[type="radio"] {
	position: absolute;
	right: 9000px;
}

/* Variable list - email */
div.help-block button.variable {
	display: block;
	width: 100%;
	border: 1px solid #ccc;
	padding: 6px 12px;
	margin: 10px 0;
	background: #fff;
	position: relative;
}
div.help-block button.variable:hover {
	background: #e9e9ed;
}
div.help-block button.variable:first-of-type {
	margin-top: -5px;
}
div.help-block button.variable span:not(.tooltip) {
	border-bottom: 1px solid #ccc;
	padding-bottom: 3px;
	margin-bottom: 3px;
	display: block;
}
div.help-block button .tooltip {
	visibility: hidden;
	width: 140px;
	background-color: #555;
	color: #fff;
	text-align: center;
	border-radius: 6px;
	padding: 5px;
	position: absolute;
	z-index: 1;
	bottom: 110%;
	left: 50%;
	margin-left: -75px;
	opacity: 0;
	transition: opacity 0.3s;
}
div.help-block button .tooltip::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border-width: 5px;
	border-style: solid;
	border-color: #555 transparent transparent transparent;
}
div.help-block button.copy:hover .tooltip {
	visibility: visible;
	opacity: 1;
}

/* error */
div.cf input[aria-invalid="true"] {
	border: 1px solid #bc2929 !important;
}
div.cf input[type="text"]:not(#phone):not(#partner_phone).error,
div.cf input[type="number"].error,
div.cf input[type="email"].error,
div.cf input[type="password"].error,
div.cf select.error {
	border: 1px solid #bc2929 !important;
}
div.cf input[type="text"].error,
div.cf input[type="number"].error,
div.cf input[type="email"].error,
div.cf input[type="password"].error,
div.cf select.error {
	border: 1px solid #bc2929 !important;
}

/*Check box*/
div.cf input[type="checkbox"] + label:before {
	content: "\f096";
	font-family: "FontAwesome";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	width: 1em;
	display: inline-block;
	margin-right: 5px;
}
div.cf input[type="checkbox"]:checked + label:before {
	content: "\f14a";
	color: #00a15e;
	animation: effect 250ms ease-in;
}
div.cf input[type="checkbox"]:disabled + label {
	color: #aaa;
}
div.cf input[type="checkbox"]:checked:disabled + label:before {
	content: "\f14a";
	color: #00a15e;
	animation: effect 250ms ease-in;
}
div.cf input[type="checkbox"]:disabled + label:before {
	content: "\f0c8";
	color: #ccc;
}
div.cf .form-group.required > .form-label {
	padding-left: 15px;
}
div.cf .form-group.required > .form-label:before {
	position: absolute;
	font-family: "FontAwesome";
	font-weight: normal;
	font-size: 11px;
	content: "\f069";
	color: #bc2929;
	margin-left: -15px;
}
div.cf .form-group.required > div.checkbox-inline .form-label:after {
	position: absolute;
	font-family: "FontAwesome";
	font-weight: normal;
	font-size: 11px;
	content: "\f069";
	color: #bc2929;
	margin-left: 5px;
}

/*Radio box*/
div.cf input[type="radio"] + label:before {
	content: "\f10c";
	font-family: "FontAwesome";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	width: 1em;
	display: inline-block;
	margin-right: 5px;
}
div.cf input[type="radio"]:checked + label:before {
	content: "\f192";
	color: #00a15e;
	animation: effect 250ms ease-in;
}
div.cf input[type="radio"]:disabled + label {
	color: #aaa;
}
div.cf input[type="radio"]:checked:disabled + label:before {
	content: "\f192";
	color: #00a15e;
	animation: effect 250ms ease-in;
}
div.cf input[type="radio"]:disabled + label:before {
	content: "\f10c";
	color: #ccc !important;
}

/*Radio Toggle*/
div.cf .toggle input[type="radio"] + label:before {
	content: "\f204";
	font-family: "FontAwesome";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	width: 1em;
	display: inline-block;
	margin-right: 10px;
}
div.cf .toggle input[type="radio"]:checked + label:before {
	content: "\f205";
	color: #16a085;
	animation: effect 250ms ease-in;
}
div.cf .toggle input[type="radio"]:disabled + label {
	color: #aaa;
}
div.cf .toggle input[type="radio"]:disabled + label:before {
	content: "\f204";
	color: #ccc;
}

/*Intl Tel Input*/
.iti {
	font-size: 16px;
	line-height: normal;
	display: block !important;
}
.iti__country-list {
	font-size: 16px !important;
	margin: 0 !important;
	padding-left: 0 !important;
}
.iti__country {
	margin-top: 0 !important;
}
.iti__country:before {
	display: none !important;
}
div.cf .iti--allow-dropdown input,
.iti--allow-dropdown input[type="tel"],
.iti--allow-dropdown input[type="text"],
.iti--separate-dial-code input,
.iti--separate-dial-code input[type="tel"],
.iti--separate-dial-code input[type="text"] {
	padding-right: 6px;
	margin-left: 0;
}
.iti input.iti-no-country {
	padding-left: 54px !important;
}

.cf-loading {
	position: relative;
	pointer-events: none;
}
.cf-loading::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.7);
	z-index: 10;
}
.cf-loading::before {
	content: "\f110";
	font-family: "FontAwesome";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 32px;
	color: #00a15e;
	z-index: 11;
	animation: cf-spin 1s linear infinite;
}
@keyframes cf-spin {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

@media only screen and (max-width: 576px) {
	.cf.profile .frmInscriptionFormulaire .d-flex .btnGreen,
	.cf-inscription .frmInscriptionFormulaire .d-flex .btnGreen {
		display: block !important;
	}
	.cf.profile .frmInscriptionFormulaire .d-flex .btnGreen + .btnGreen,
	.cf-inscription .frmInscriptionFormulaire .d-flex .btnGreen + .btnGreen {
		margin-top: 12px !important;
	}

	div.cf-inscription .btn.ccm-input-submit {
		width: 100%;
	}

	div.cf.profile div.buttons,
	div.cf.intranet-inscription div.buttons,
	div.cf.cf-inscription div.buttons {
		display: flex;
		flex-direction: column;
		gap: 0.5rem;
	}
}

@media only screen and (max-width: 480px) {
	.cf.profile .frmInscriptionFormulaire .buttons .btnGreen,
	.cf-inscription .frmInscriptionFormulaire .buttons .btnGreen {
		float: unset !important;
		margin-inline: auto !important;
		display: block !important;
	}
}
/*
.iti--allow-dropdown input, .iti--allow-dropdown input[type=tel], .iti--allow-dropdown input[type=text], .iti--separate-dial-code input, .iti--separate-dial-code input[type=tel], .iti--separate-dial-code input[type=text] { padding-left:6px!important; padding-right:54px!important; }
*/
@media only screen and (min-width: 480px) {
	div.cf.formation div.formations-list div.formation {
		flex: 0 0 calc(50% - 20px);
		margin-left: 10px;
		margin-right: 10px;
	}
	div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-desc a {
		padding: 8px 15px 6px;
		color: #fff;
		font-weight: 900;
	}

	/* div.cf.webinaire div.webinaires-list div.webinaire { flex: 0 0 calc(50% - 20px); margin-left: 10px; margin-right: 10px; } */
}

@media only screen and (min-width: 576px) {
	div.cf:not(.cf-inscription) h1 {
		font-family: open-sans, sans-serif;
		font-weight: 700 !important;
		font-size: 50px;
	}
	div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-img {
		display: block;
	}
	div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-desc {
		margin: 25px 0 25px -100px;
	}
	div.cf.webinaire div.search-filters #frmFilterWebinaires div.checkboxes {
		text-align: left;
	}
	div.cf.webinaire div.search-filters #frmFilterWebinaires div.checkboxes .checkbox-inline {
		margin: 0;
	}
	div.cf.webinaire div.search-filters #frmFilterWebinaires div.checkboxes .checkbox-inline + .checkbox-inline {
		margin-left: 30px;
	}
}

@media only screen and (min-width: 768px) {
	div.cf .form-inline .form-group + .form-group {
		margin-left: 30px;
	}
	div.cf.formation div.formations-list div.formation {
		flex: 0 0 calc(33.33333333% - 20px);
	}
	/* div.cf.webinaire div.webinaires-list div.webinaire { flex: 0 0 calc(33.33333333% - 20px); } */
	div.cf.profile div.history-bt {
		text-align: right;
	}
	div.cf.profile div.print-bt {
		text-align: right;
	}
	div.cf.webinaire div.webinaires-list div.webinaire div.webinaire-desc {
		margin-left: -75px;
	}
	div.cf.webinaire div.pagination p {
		text-align: left;
	}
	div.cf.webinaire div.pagination .dataTables_paginate {
		text-align: right;
	}
}

@media only screen and (min-width: 992px) {
	div.cf.intranet-inscription h2 span.smaller {
		font-size: 18px;
		line-height: 20px;
	}

	div.cf.foire-emploi div.tonik-youtube-gallery h2 {
		margin: 40px 0 10px 0;
	}
}

@media only screen and (min-width: 1200px) {
	div.cf.intranet-inscription h2 span.smaller {
		font-size: 20px;
		line-height: 22px;
	}
}

@media only screen and (min-width: 1600px) {
	div.cf.intranet-inscription h2 span.smaller {
		font-size: 22px;
		line-height: 24px;
	}
	div.cf.webinaire div.search-filters #frmFilterWebinaires {
		width: 100%;
	}
	div.cf.webinaire div.search-filters #frmFilterWebinaires > div {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	div.cf.webinaire div.search-filters #frmFilterWebinaires div.checkboxes {
		text-align: right;
	}
}

@media print {
	html {
		height: auto !important;
	}
	body {
		height: auto !important;
	}
	div#ccm-toolbar {
		display: none;
	}
	div#ccm-account-menu-container {
		display: none;
	}
	div.ccm-page {
		padding-top: 0 !important;
		display: block !important;
	}
	div.ccm-page header div.header-fixable {
		position: relative;
		top: auto !important;
	}
	div.ccm-page header div.header-fixable div.logo-wrapper {
		text-align: center;
	}
	div.ccm-page header div.header-fixable div.logo-wrapper img {
		display: inline-block;
	}
	a[href]:after {
		content: none;
	}
	div.ccm-page div.sub {
		padding: 0;
		overflow: initial !important;
	}
	div.cf.intranet-inscription div.immigrant-info-wrapper {
		padding: 0;
	}
	div.cf.intranet-inscription div.immigrant-full-info div.tab-content {
		padding-top: 0;
	}
	div.user-profile ul.nav.nav-pills {
		display: none;
	}
	.tab-content > .tab-pane {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
	}
}

a.cke_button,
a.cke_combo_button {
	transition: none !important;
}

@keyframes effect {
	0% {
		transform: scale(0);
	}
	25% {
		transform: scale(1.3);
	}
	75% {
		transform: scale(1.4);
	}
	100% {
		transform: scale(1);
	}
}

/***
JS dataTable
***/
#results_wrapper > .row > .col-sm-12 {
	max-width: 100% !important;
	overflow-x: scroll;
}
#results_wrapper .table.dataTable {
	width: 100% !important;
}
#results_wrapper #custom_filter_toggle {
	display: block;
	margin: auto;
}
#results_wrapper #custom_filter_reset,
#results_wrapper #custom_form_submit_btn {
	display: block;
	margin-left: auto;
	margin-right: 0;
}
#results_wrapper #custom_filter {
	max-height: 0;
	transition: max-height 0.15s ease-out;
	overflow: hidden;
}
#results_wrapper #custom_filter.show {
	max-height: 500px;
	transition: max-height 0.25s ease-in;
}
#results_wrapper #custom_filter > .row {
	margin-bottom: 15px;
}
#results_wrapper #custom_filter select,
#results_wrapper #custom_form_row select,
#results_wrapper #custom_filter input,
#results_wrapper #custom_form_row input {
	width: 100%;
	max-width: 100%;
}
#results_wrapper #custom_filter .custom_filter_date_range {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
#results_wrapper #custom_filter .custom_filter_date_range > div {
	display: flex;
	flex-wrap: nowrap;
	flex-grow: 1;
	align-items: center;
	background-color: #eee;
	border-radius: 4px;
	border: 1px solid rgb(204, 204, 204);
	border-right: 0;
	overflow: hidden;
}
#results_wrapper #custom_filter .custom_filter_date_range > div > label {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin-bottom: 0;
	font-weight: normal;
	width: 50%;
}
#results_wrapper #custom_filter .custom_filter_date_range > div > label > span {
	margin: 1px 7px 0 7px;
	color: #555;
	font-size: 16px;
}
#results_wrapper #custom_filter .custom_filter_date_range > div > label > input {
	border-top: 0;
	border-bottom: 0;
	border-radius: 0;
}
#frmUpdateInscription input {
	color: #555;
	background-color: #fff;
	background-image: none;
	border: 1px solid #ccc;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	padding: 5px 10px;
	border-radius: 4px;
}
#frmUpdateInscription select {
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	border-radius: 4px;
}

#frmUpdateInscription #custom_form_row_msg {
	overflow: unset;
	padding: 0;
}
#frmUpdateInscription #custom_form_row_msg .alert {
	margin-bottom: 0;
	margin-top: 15px;
	padding: 5px 10px;
	font-size: 16px;
}

.ccm-input-date-mobile[readonly] {
	background-color: #fff !important;
	color: #000 !important;
	cursor: pointer;
}

div.cf.cf-directory .cf-directory-sub {
	color: #5A6B80;
	font-size: 14px;
	margin: -6px 0 18px;
}
div.cf.cf-directory .cf-directory-filters {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 16px;
}
div.cf.cf-directory .cf-directory-filters .form-control {
	border: 1px solid #DFDFDF;
	border-radius: 999px;
	padding: 8px 15px;
	height: auto;
	font-size: 14px;
	box-shadow: none;
	width: auto;
}
div.cf.cf-directory .cf-directory-reset {
	font-size: 13px;
	color: #5A6B80;
	text-decoration: underline;
}
div.cf.cf-directory .cf-directory-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 14px;
}
div.cf.cf-directory .cf-directory-card {
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 16px;
	display: flex;
	gap: 12px;
}
div.cf.cf-directory .cf-directory-av {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	color: #fff;
	font-size: 15px;
}
div.cf.cf-directory .cf-directory-av--1 {
	background: #00A15E;
}
div.cf.cf-directory .cf-directory-av--2 {
	background: #00804A;
}
div.cf.cf-directory .cf-directory-av--3 {
	background: #1C3E73;
}
div.cf.cf-directory .cf-directory-av--4 {
	background: #ED2224;
}
div.cf.cf-directory .cf-directory-av--5 {
	background: #5A6B80;
}
div.cf.cf-directory .cf-directory-nm {
	font-weight: 700;
	font-size: 14.5px;
}
div.cf.cf-directory .cf-directory-rl,
div.cf.cf-directory .cf-directory-org {
	font-size: 12px;
	color: #5A6B80;
}
div.cf.cf-directory .cf-directory-rg {
	font-size: 12px;
	color: #00804A;
	font-weight: 700;
}
div.cf.cf-directory .cf-directory-act {
	margin-top: 6px;
	font-size: 13px;
}
div.cf.cf-directory .cf-directory-empty {
	background: #E1F4EC;
	border-radius: 12px;
	padding: 18px;
	color: #111C2B;
}
@media (max-width: 767px) {
	div.cf.cf-directory .cf-directory-grid {
		grid-template-columns: 1fr;
	}
	div.cf.cf-directory .cf-directory-filters .form-control {
		width: 100%;
	}
}

/* CF-T48 §2 — Documents (espace partenaires) */
div.cf.cf-documents .cf-documents-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
div.cf.cf-documents .cf-documents-sub {
	color: #5A6B80;
	font-size: 14px;
	margin: -6px 0 18px;
}
div.cf.cf-documents .cf-documents-notice {
	background: #FFF3D6;
	border: 1px solid #F0DCA4;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 13px;
	color: #7A5A14;
	margin-bottom: 14px;
}
div.cf.cf-documents .cf-documents-shell {
	display: grid;
	grid-template-columns: 250px 1fr;
	gap: 16px;
	align-items: start;
}
div.cf.cf-documents .cf-documents-rail {
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 12px;
}
div.cf.cf-documents .cf-documents-rail ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
/* Le thème pose une puce ▪ sur chaque li de l'intranet (main.css, div.ccm-page div.sub ul li:before) :
   neutralisée ici pour le rail des dossiers, comme pour les listes du calendrier. */
div.cf.cf-documents .cf-documents-rail li:before {
	content: none;
}
div.cf.cf-documents .cf-documents-folder {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 12px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	color: #111C2B;
	text-decoration: none;
}
div.cf.cf-documents .cf-documents-folder:hover,
div.cf.cf-documents .cf-documents-folder:focus {
	background: #E1F4EC;
	text-decoration: none;
}
div.cf.cf-documents .cf-documents-folder.is-active {
	background: #E1F4EC;
	font-weight: 700;
	color: #00804A;
}
div.cf.cf-documents .cf-documents-folder--child {
	padding-left: 30px;
	font-weight: 400;
	font-size: 13px;
}
div.cf.cf-documents .cf-documents-lock {
	margin-left: auto;
	font-size: 11px;
	font-weight: 700;
	color: #ED2224;
	white-space: nowrap;
}
div.cf.cf-documents .cf-documents-panel {
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 18px 20px;
}
div.cf.cf-documents .cf-documents-row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 11px 4px;
	border-top: 1px solid #DFDFDF;
	font-size: 14px;
}
div.cf.cf-documents .cf-documents-row:first-child {
	border-top: none;
}
div.cf.cf-documents .cf-documents-ic {
	width: 32px;
	height: 32px;
	flex: none;
	border-radius: 8px;
	background: #E7EDF7;
	color: #1C3E73;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 800;
}
div.cf.cf-documents .cf-documents-row--locked .cf-documents-ic {
	background: #F1F1F1;
	color: #5A6B80;
}
div.cf.cf-documents .cf-documents-name {
	font-weight: 700;
	word-break: break-word;
}
div.cf.cf-documents .cf-documents-meta {
	margin-left: auto;
	color: #5A6B80;
	font-size: 12px;
	white-space: nowrap;
}
div.cf.cf-documents .cf-documents-acts {
	font-size: 13px;
	white-space: nowrap;
}
div.cf.cf-documents .cf-documents-locked-msg {
	margin-left: auto;
	color: #5A6B80;
	font-size: 12px;
}
div.cf.cf-documents .cf-documents-empty {
	background: #E1F4EC;
	border-radius: 12px;
	padding: 18px;
	color: #111C2B;
	margin: 0;
}
div.cf.cf-documents .cf-documents-upload {
	border: 1px dashed #DFDFDF;
	border-radius: 12px;
	padding: 14px 16px;
	margin-bottom: 14px;
}
div.cf.cf-documents .cf-documents-upload-legend {
	font-size: 14px;
	font-weight: 700;
	border: none;
	margin-bottom: 8px;
}
div.cf.cf-documents .cf-documents-upload-hint {
	color: #5A6B80;
	font-size: 12px;
	margin: 8px 0 0;
}
div.cf.cf-documents .cf-documents-upload .progress {
	margin: 10px 0 0;
	height: 8px;
}
div.cf.cf-documents .cf-documents-upload-files {
	font-size: 13px;
	margin-top: 8px;
}
@media (max-width: 767px) {
	div.cf.cf-documents .cf-documents-shell {
		grid-template-columns: 1fr;
	}
	div.cf.cf-documents .cf-documents-head .btn {
		width: 100%;
	}
	div.cf.cf-documents .cf-documents-row {
		flex-wrap: wrap;
	}
	div.cf.cf-documents .cf-documents-meta,
	div.cf.cf-documents .cf-documents-locked-msg {
		margin-left: 44px;
		white-space: normal;
	}
	div.cf.cf-documents .cf-documents-acts {
		margin-left: 44px;
	}
}
div.cf.cf-acces-cible .cf-acces-cible-sub {
	color: #5A6B80;
	font-size: 14px;
	margin: -6px 0 12px;
}
div.cf.cf-acces-cible .cf-acces-cible-help {
	background: #FFF3D6;
	border: 1px solid #F0DCA4;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 13px;
	color: #7A5A14;
	margin-bottom: 18px;
}
div.cf.cf-acces-cible .cf-acces-cible-pick,
div.cf.cf-acces-cible .cf-acces-cible-search {
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 16px;
}
div.cf.cf-acces-cible .cf-acces-cible-pick .form-control,
div.cf.cf-acces-cible .cf-acces-cible-search .form-control {
	border: 1px solid #DFDFDF;
	border-radius: 999px;
	padding: 8px 15px;
	height: auto;
	width: auto;
	max-width: 100%;
}
div.cf.cf-acces-cible h2 {
	font-size: 16px;
	font-weight: 800;
	margin: 24px 0 10px;
}
div.cf.cf-acces-cible .cf-acces-cible-table {
	width: 100%;
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 14px;
}
div.cf.cf-acces-cible .cf-acces-cible-table th,
div.cf.cf-acces-cible .cf-acces-cible-table td {
	padding: 10px 14px;
	border-top: 1px solid #DFDFDF;
	text-align: left;
	vertical-align: middle;
}
div.cf.cf-acces-cible .cf-acces-cible-table thead th {
	border-top: none;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: #5A6B80;
}
div.cf.cf-acces-cible .cf-acces-cible-act {
	text-align: right;
	white-space: nowrap;
}
div.cf.cf-acces-cible .cf-acces-cible-act form {
	display: inline;
}
div.cf.cf-acces-cible .cf-acces-cible-empty {
	background: #E1F4EC;
	border-radius: 12px;
	padding: 18px;
	color: #111C2B;
}
@media (max-width: 767px) {
	div.cf.cf-acces-cible .cf-acces-cible-pick .form-control,
	div.cf.cf-acces-cible .cf-acces-cible-search .form-control,
	div.cf.cf-acces-cible .cf-acces-cible-pick .btn,
	div.cf.cf-acces-cible .cf-acces-cible-search .btn {
		width: 100%;
	}
	div.cf.cf-acces-cible .cf-acces-cible-table {
		display: block;
		overflow-x: auto;
	}
}

/* CF-T48 §3 — Nouvelles (espace partenaires) */
div.cf.cf-nouvelles .cf-nouvelles-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
div.cf.cf-nouvelles h2.cf-nouvelles-title {
	font-size: 18px;
	font-weight: 800 !important;
	margin: 0 0 4px;
}
div.cf.cf-nouvelles .cf-nouvelles-sub {
	color: #5A6B80;
	font-size: 14px;
	margin: 0 0 18px;
}
div.cf.cf-nouvelles .cf-nouvelles-filters {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}
div.cf.cf-nouvelles .cf-nouvelles-filters ul {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
}
div.cf.cf-nouvelles .cf-nouvelles-filters li {
	margin: 0;
	padding: 0;
}
div.cf.cf-nouvelles .cf-nouvelles-filters li:before {
	content: none;
}
div.cf.cf-nouvelles .cf-tag {
	display: inline-block;
	font-size: 11.5px;
	font-weight: 700;
	border-radius: 999px;
	padding: 4px 12px;
	text-decoration: none;
	line-height: 1.5;
}
div.cf.cf-nouvelles a.cf-tag:hover,
div.cf.cf-nouvelles a.cf-tag:focus {
	text-decoration: none;
	box-shadow: 0 0 0 2px #00A15E;
}
div.cf.cf-nouvelles a.cf-tag.is-active {
	box-shadow: 0 0 0 2px #00804A;
}
div.cf.cf-nouvelles .cf-tag--all {
	background: #F1F1F1;
	color: #5A6B80;
}
div.cf.cf-nouvelles .cf-tag--annonce {
	background: #E1F4EC;
	color: #00804A;
}
div.cf.cf-nouvelles .cf-tag--evenement {
	background: #FFF3D6;
	color: #9A7212;
}
div.cf.cf-nouvelles .cf-tag--ressource {
	background: #E7EDF7;
	color: #1C3E73;
}
div.cf.cf-nouvelles .cf-tag--regional {
	background: #FBE4E4;
	color: #ED2224;
}
div.cf.cf-nouvelles .cf-nouvelles-feed {
	display: flex;
	flex-direction: column;
	gap: 14px;
}
div.cf.cf-nouvelles .cf-nouvelles-card {
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 18px 20px;
	scroll-margin-top: 120px;
}
div.cf.cf-nouvelles .cf-nouvelles-card.is-highlight {
	border-color: #00A15E;
	box-shadow: 0 0 0 3px #E1F4EC;
}
div.cf.cf-nouvelles .cf-nouvelles-card:focus {
	outline: 2px solid #00804A;
}
div.cf.cf-nouvelles .cf-nouvelles-card h3 {
	margin: 10px 0 6px;
	font-size: 16px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .01em;
	position: relative;
	padding-bottom: 12px;
}
div.cf.cf-nouvelles .cf-nouvelles-card h3::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	border-bottom: 3px solid #00A15E;
}
div.cf.cf-nouvelles .cf-nouvelles-card p {
	margin: 0 0 10px;
	color: #3C4B5E;
	font-size: 14px;
}
div.cf.cf-nouvelles .cf-nouvelles-card p:last-of-type {
	margin-bottom: 0;
}
div.cf.cf-nouvelles .cf-nouvelles-byline {
	font-size: 12.5px;
	color: #5A6B80;
	margin-top: 10px;
}
div.cf.cf-nouvelles .cf-nouvelles-acts {
	margin-top: 12px;
	text-align: right;
}
div.cf.cf-nouvelles .cf-nouvelles-empty {
	background: #E1F4EC;
	border-radius: 12px;
	padding: 18px;
	color: #111C2B;
	margin: 0;
}
div.cf.cf-nouvelles .cf-nouvelles-form {
	background: #fff;
	border: 1px dashed #DFDFDF;
	border-radius: 12px;
	padding: 16px 18px;
	margin-bottom: 18px;
}
div.cf.cf-nouvelles .cf-nouvelles-legend {
	font-size: 14px;
	font-weight: 700;
	border: none;
	margin-bottom: 10px;
}
div.cf.cf-nouvelles .cf-nouvelles-form .form-control {
	border: 1px solid #DFDFDF;
	border-radius: 10px;
	padding: 8px 14px;
	height: auto;
	width: 100%;
	max-width: 100%;
}
div.cf.cf-nouvelles .cf-nouvelles-form textarea.form-control {
	border-radius: 12px;
}
div.cf.cf-nouvelles .cf-nouvelles-hint {
	color: #5A6B80;
	font-size: 12px;
	margin: 6px 0 0;
}
div.cf.cf-nouvelles .cf-nouvelles-note {
	background: #FFF3D6;
	border: 1px solid #F0DCA4;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 13px;
	color: #7A5A14;
	margin: 12px 0 0;
}
div.cf.cf-nouvelles .cf-nouvelles-cancel {
	font-size: 13px;
	margin-left: 12px;
}
div.cf.cf-nouvelles .cf-nouvelles-form span.error {
	display: block;
	color: #ED2224;
	margin-top: 4px;
}
@media (max-width: 767px) {
	div.cf.cf-nouvelles .cf-nouvelles-head .btn {
		width: 100%;
	}
	div.cf.cf-nouvelles .cf-nouvelles-card {
		padding: 16px;
	}
	div.cf.cf-nouvelles .cf-nouvelles-byline {
		white-space: normal;
	}
	div.cf.cf-nouvelles .cf-nouvelles-acts .btn,
	div.cf.cf-nouvelles .cf-nouvelles-form .btn {
		width: 100%;
	}
	div.cf.cf-nouvelles .cf-nouvelles-cancel {
		display: inline-block;
		margin: 10px 0 0;
	}
}

/* CF-T48 §4 — Notes (espace partenaires) */
div.cf.cf-notes .cf-notes-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
div.cf.cf-notes h2.cf-notes-title {
	font-size: 18px;
	font-weight: 800 !important;
	margin: 0 0 4px;
}
div.cf.cf-notes .cf-notes-sub {
	color: #5A6B80;
	font-size: 14px;
	margin: 0 0 18px;
}
div.cf.cf-notes .cf-tag {
	display: inline-block;
	font-size: 11.5px;
	font-weight: 700;
	border-radius: 999px;
	padding: 4px 12px;
	text-decoration: none;
	line-height: 1.5;
}
div.cf.cf-notes .cf-tag--tous {
	background: #E1F4EC;
	color: #00804A;
}
div.cf.cf-notes .cf-tag--admins {
	background: #E7EDF7;
	color: #1C3E73;
}
div.cf.cf-notes .cf-tag--region {
	background: #FFF3D6;
	color: #9A7212;
}
div.cf.cf-notes .cf-notes-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 14px;
}
div.cf.cf-notes .cf-notes-card {
	background: #FFFDF4;
	border: 1px solid #EDE2BC;
	border-radius: 12px;
	padding: 16px 18px;
}
div.cf.cf-notes .cf-notes-card h3 {
	margin: 8px 0 6px;
	font-size: 14.5px;
	font-weight: 700;
}
div.cf.cf-notes .cf-notes-card h3 a {
	color: #111C2B;
	text-decoration: none;
}
div.cf.cf-notes .cf-notes-card h3 a:hover,
div.cf.cf-notes .cf-notes-card h3 a:focus {
	text-decoration: underline;
}
div.cf.cf-notes .cf-notes-excerpt {
	margin: 0;
	font-size: 13.5px;
	color: #5A5A46;
}
div.cf.cf-notes .cf-notes-hist {
	font-size: 11.5px;
	color: #98917A;
	margin: 12px 0 0;
}
div.cf.cf-notes .cf-notes-hist a {
	color: #98917A;
	text-decoration: underline;
}
div.cf.cf-notes .cf-notes-lock {
	font-size: 11.5px;
	color: #9A7212;
	background: #FFF3D6;
	border-radius: 8px;
	padding: 6px 10px;
	margin: 10px 0 0;
}
div.cf.cf-notes .cf-notes-empty {
	background: #FFFDF4;
	border: 1px solid #EDE2BC;
	border-radius: 12px;
	padding: 18px;
	color: #111C2B;
	margin: 0;
}
div.cf.cf-notes .cf-notes-form {
	background: #FFFDF4;
	border: 1px solid #EDE2BC;
	border-radius: 12px;
	padding: 16px 18px;
	margin-bottom: 12px;
}
div.cf.cf-notes .cf-notes-form .form-control {
	border: 1px solid #EDE2BC;
	border-radius: 10px;
	padding: 8px 14px;
	height: auto;
	width: 100%;
	max-width: 100%;
	background: #fff;
}
div.cf.cf-notes .cf-notes-form textarea.form-control {
	border-radius: 12px;
	min-height: 260px;
}
div.cf.cf-notes .cf-notes-hint {
	color: #98917A;
	font-size: 12px;
	margin: 6px 0 0;
}
div.cf.cf-notes .cf-notes-notice {
	background: #FFF3D6;
	border: 1px solid #F0DCA4;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 13px;
	color: #7A5A14;
	margin: 0 0 12px;
}
div.cf.cf-notes .cf-notes-form span.error {
	display: block;
	color: #ED2224;
	margin-top: 4px;
}
div.cf.cf-notes .cf-notes-cancel {
	display: inline-block;
	margin: 0;
}
div.cf.cf-notes .cf-notes-byline {
	font-size: 12.5px;
	color: #98917A;
	margin: 0 0 14px;
}
div.cf.cf-notes .cf-notes-body {
	background: #FFFDF4;
	border: 1px solid #EDE2BC;
	border-radius: 12px;
	padding: 18px 20px;
}
div.cf.cf-notes .cf-notes-body p {
	margin: 0 0 12px;
	font-size: 14px;
	color: #5A5A46;
}
div.cf.cf-notes .cf-notes-body p:last-child {
	margin-bottom: 0;
}
div.cf.cf-notes .cf-notes-acts {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	margin-top: 16px;
}
div.cf.cf-notes .cf-notes-link {
	font-size: 13px;
}
div.cf.cf-notes .cf-notes-link.is-disabled {
	color: #98917A;
	cursor: not-allowed;
}
div.cf.cf-notes .cf-notes-del {
	margin: 0;
}
div.cf.cf-notes ol.cf-notes-versions {
	list-style: none;
	margin: 0;
	padding: 0;
}
div.cf.cf-notes .cf-notes-version {
	background: #FFFDF4;
	border: 1px solid #EDE2BC;
	border-radius: 12px;
	padding: 14px 18px;
	margin-bottom: 10px;
	font-size: 13px;
	color: #5A5A46;
}
div.cf.cf-notes .cf-notes-version.is-current {
	border-color: #00A15E;
}
div.cf.cf-notes .cf-notes-vnum {
	font-weight: 700;
	color: #111C2B;
	margin-right: 8px;
}
div.cf.cf-notes .cf-notes-current {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	border-radius: 999px;
	padding: 3px 10px;
	background: #E1F4EC;
	color: #00804A;
	margin-right: 8px;
}
div.cf.cf-notes .cf-notes-vcomment {
	color: #98917A;
	font-size: 12px;
	margin: 6px 0 0;
}
div.cf.cf-notes .cf-notes-vbody {
	background: #fff;
	border: 1px solid #EDE2BC;
	border-radius: 10px;
	padding: 12px 14px;
	margin-top: 10px;
}
div.cf.cf-notes .cf-notes-vbody p {
	margin: 0 0 10px;
	font-size: 13.5px;
	color: #5A5A46;
}
div.cf.cf-notes .cf-notes-vbody p:last-child {
	margin-bottom: 0;
}
div.cf.cf-notes .cf-notes-vacts {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	margin: 10px 0 0;
}
div.cf.cf-notes .cf-notes-restore,
div.cf.cf-notes .cf-notes-hide,
div.cf.cf-notes .cf-notes-unhide {
	display: inline;
	margin: 0;
}
/* « Restaurer », « Masquer » et « Réafficher » sont des POST porteurs d'un jeton, donc des boutons ;
   ils se lisent comme le lien « Voir » placé à côté d'eux. */
div.cf.cf-notes a.cf-notes-vlink,
div.cf.cf-notes button.cf-notes-vlink {
	font-size: 13px;
	color: #00804A;
	text-decoration: underline;
}
div.cf.cf-notes button.cf-notes-vlink {
	background: none;
	border: 0;
	padding: 0;
	font-family: inherit;
	line-height: inherit;
	cursor: pointer;
}
div.cf.cf-notes a.cf-notes-vlink:hover,
div.cf.cf-notes a.cf-notes-vlink:focus,
div.cf.cf-notes button.cf-notes-vlink:hover,
div.cf.cf-notes button.cf-notes-vlink:focus {
	color: #005F36;
}

/* Révisions masquées : repliées sous la liste, grisées et bordées en pointillé pour qu'une entrée
   sortie de l'historique ne se lise jamais comme une entrée ordinaire. */
div.cf.cf-notes details.cf-notes-hidden {
	margin: 18px 0 0;
}
div.cf.cf-notes details.cf-notes-hidden > summary {
	font-size: 13px;
	color: #98917A;
	cursor: pointer;
	margin-bottom: 10px;
}
div.cf.cf-notes details.cf-notes-hidden > summary:hover,
div.cf.cf-notes details.cf-notes-hidden > summary:focus {
	color: #5A5A46;
}
div.cf.cf-notes .cf-notes-version.is-hidden {
	border-style: dashed;
	background: #FAF9F4;
	color: #98917A;
}
div.cf.cf-notes .cf-notes-version.is-hidden .cf-notes-vnum {
	color: #98917A;
}
div.cf.cf-notes .cf-notes-vhidden {
	color: #98917A;
	font-size: 12px;
	font-style: italic;
	margin: 6px 0 0;
}

/* Confirmation des actions de l'historique. Volontairement indépendante du JS de Bootstrap :
   la page est servie avec Bootstrap 3 par le thème et Bootstrap 5 par la barre d'outils du noyau,
   et l'espace partenaires tourne aussi en mode « page complète », sans htmx. */
div.cf.cf-notes .cf-notes-confirm {
	position: fixed;
	inset: 0;
	z-index: 1050;
	background: rgba(0, 0, 0, .5);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	overflow-y: auto;
}
/* L'attribut hidden du dialog doit gagner sur le display: flex ci-dessus, sinon la modale s'affiche au chargement. */
div.cf.cf-notes .cf-notes-confirm[hidden] {
	display: none;
}
div.cf.cf-notes .cf-notes-confirm-box {
	background: #fff;
	border-radius: 12px;
	padding: 20px 22px 24px;
	max-width: 460px;
	width: 100%;
}
div.cf.cf-notes h2.cf-notes-confirm-title {
	font-size: 17px;
	font-weight: 800 !important;
	margin: 0 0 10px;
}
div.cf.cf-notes .cf-notes-confirm-text {
	font-size: 14px;
	color: #5A5A46;
	margin: 0 0 18px;
}
div.cf.cf-notes .cf-notes-confirm-acts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
div.cf.cf-notes a:focus,
div.cf.cf-notes button:focus {
	outline: 2px solid #00804A;
	outline-offset: 2px;
}
@media (max-width: 767px) {
	div.cf.cf-notes .cf-notes-head .btn {
		width: 100%;
	}
	div.cf.cf-notes .cf-notes-list {
		grid-template-columns: 1fr;
	}
	div.cf.cf-notes .cf-notes-card,
	div.cf.cf-notes .cf-notes-body,
	div.cf.cf-notes .cf-notes-version {
		padding: 14px 16px;
	}
	div.cf.cf-notes .cf-notes-acts {
		flex-direction: column;
		align-items: stretch;
		gap: 10px;
	}
	div.cf.cf-notes .cf-notes-acts .btn,
	div.cf.cf-notes .cf-notes-form .btn,
	div.cf.cf-notes .cf-notes-cancel .btn {
		width: 100%;
	}
	div.cf.cf-notes .cf-notes-confirm-acts {
		flex-direction: column;
	}
}

/* CF-T48 §5 — Calendrier (espace partenaires) */
div.cf.cf-calendrier .cf-cal-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
div.cf.cf-calendrier h2.cf-cal-title {
	font-size: 18px;
	font-weight: 800 !important;
	margin: 0 0 4px;
}
div.cf.cf-calendrier .cf-cal-sub {
	color: #5A6B80;
	font-size: 14px;
	margin: 0 0 18px;
}
div.cf.cf-calendrier .cf-tag {
	display: inline-block;
	font-size: 11.5px;
	font-weight: 700;
	border-radius: 999px;
	padding: 4px 12px;
	text-decoration: none;
	line-height: 1.5;
}
div.cf.cf-calendrier .cf-tag--rencontre {
	background: #E1F4EC;
	color: #00804A;
}
div.cf.cf-calendrier .cf-tag--formation {
	background: #E7EDF7;
	color: #1C3E73;
}
div.cf.cf-calendrier .cf-tag--echeance {
	background: #FFF3D6;
	color: #9A7212;
}
div.cf.cf-calendrier .cf-cal-invite {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	border-radius: 999px;
	padding: 3px 10px;
	background: #F1F1F1;
	color: #5A6B80;
	margin-left: 6px;
}
div.cf.cf-calendrier .cf-cal-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}
div.cf.cf-calendrier .cf-cal-month {
	font-size: 15px;
	font-weight: 800;
	color: #111C2B;
}
div.cf.cf-calendrier .cf-cal-navlink,
div.cf.cf-calendrier .cf-cal-today {
	font-size: 13px;
}
div.cf.cf-calendrier .cf-cal-navlink.is-disabled {
	color: #98917A;
	cursor: not-allowed;
}
div.cf.cf-calendrier table.cf-cal {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	overflow: hidden;
}
div.cf.cf-calendrier table.cf-cal th {
	background: #08162A;
	color: #C2CEDB;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	padding: 8px;
	text-align: center;
}
div.cf.cf-calendrier .cf-cal-cell {
	min-height: 76px;
	height: 76px;
	vertical-align: top;
	border-top: 1px solid #DFDFDF;
	border-left: 1px solid #DFDFDF;
	padding: 6px;
	font-size: 12px;
	color: #5A6B80;
}
div.cf.cf-calendrier .cf-cal-cell:first-child {
	border-left: none;
}
div.cf.cf-calendrier .cf-cal-day {
	font-weight: 700;
	color: #111C2B;
}
div.cf.cf-calendrier .cf-cal-cell.is-outside .cf-cal-day {
	color: #98917A;
	font-weight: 400;
}
div.cf.cf-calendrier .cf-cal-cell.is-today {
	box-shadow: inset 0 0 0 2px #00A15E;
}
div.cf.cf-calendrier .cf-cal-cell.is-today .cf-cal-day {
	color: #00804A;
}
div.cf.cf-calendrier .cf-ev {
	display: block;
	margin-top: 4px;
	border-radius: 6px;
	padding: 2px 6px;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
div.cf.cf-calendrier .cf-ev--rencontre {
	background: #E1F4EC;
	color: #00804A;
}
div.cf.cf-calendrier .cf-ev--formation {
	background: #E7EDF7;
	color: #1C3E73;
}
div.cf.cf-calendrier .cf-ev--echeance {
	background: #FFF3D6;
	color: #9A7212;
}
div.cf.cf-calendrier .cf-cal-more {
	background: none;
	border: none;
	padding: 2px 0 0;
	font-size: 11px;
	font-weight: 700;
	color: #00804A;
	text-decoration: underline;
}
div.cf.cf-calendrier .cf-cal-notice {
	background: #FFF3D6;
	border: 1px solid #F0DCA4;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 12.5px;
	color: #7A5A14;
	margin: 12px 0 0;
}
div.cf.cf-calendrier .cf-cal-empty {
	background: #F7F7F7;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 14px 18px;
	color: #111C2B;
	font-size: 13.5px;
	margin: 12px 0 0;
}
div.cf.cf-calendrier .cf-cal-upcoming {
	margin-top: 22px;
}
div.cf.cf-calendrier .cf-cal-upcoming h3,
div.cf.cf-calendrier .cf-cal-guests h3,
div.cf.cf-calendrier .cf-cal-occurrences h3 {
	font-size: 14px;
	font-weight: 800;
	margin: 0 0 8px;
}
div.cf.cf-calendrier ul.cf-cal-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
div.cf.cf-calendrier ul.cf-cal-list li {
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
	padding: 10px 0;
	border-top: 1px solid #DFDFDF;
	font-size: 13.5px;
}
div.cf.cf-calendrier ul.cf-cal-list li:first-child {
	border-top: none;
}
div.cf.cf-calendrier .cf-cal-dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	flex: none;
	display: inline-block;
}
div.cf.cf-calendrier .cf-cal-when {
	color: #5A6B80;
	font-size: 12.5px;
	white-space: nowrap;
}
div.cf.cf-calendrier .cf-cal-what {
	font-weight: 700;
	color: #111C2B;
}
div.cf.cf-calendrier .cf-cal-form {
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 16px 18px;
	margin-bottom: 12px;
}
div.cf.cf-calendrier .cf-cal-form .form-control {
	border: 1px solid #DFDFDF;
	border-radius: 10px;
	padding: 8px 14px;
	height: auto;
	width: 100%;
	max-width: 100%;
	background: #fff;
}
div.cf.cf-calendrier .cf-cal-form textarea.form-control {
	border-radius: 12px;
	min-height: 160px;
}
div.cf.cf-calendrier .cf-cal-legend {
	font-size: 14px;
	font-weight: 700;
	border: none;
	margin-bottom: 8px;
}
div.cf.cf-calendrier .cf-cal-types {
	border: none;
	margin: 0 0 14px;
	padding: 0;
}
div.cf.cf-calendrier .cf-cal-type {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 14px 6px 0;
	font-weight: 400;
}
div.cf.cf-calendrier .cf-cal-times {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
}
div.cf.cf-calendrier .cf-cal-times .form-group {
	flex: 1 1 160px;
}
div.cf.cf-calendrier .cf-cal-hint {
	color: #5A6B80;
	font-size: 12px;
	margin: 6px 0 0;
}
div.cf.cf-calendrier .cf-cal-invitees {
	position: relative;
	margin-bottom: 14px;
}
div.cf.cf-calendrier ul.cf-cal-results {
	list-style: none;
	margin: 4px 0 0;
	padding: 4px;
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 10px;
	max-height: 220px;
	overflow: auto;
	position: absolute;
	z-index: 10;
	width: 100%;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
}
div.cf.cf-calendrier .cf-cal-result {
	display: block;
	width: 100%;
	text-align: left;
	background: none;
	border: none;
	border-radius: 8px;
	padding: 7px 10px;
	font-size: 13.5px;
	color: #111C2B;
}
div.cf.cf-calendrier .cf-cal-result:hover,
div.cf.cf-calendrier .cf-cal-result:focus {
	background: #E1F4EC;
	color: #00804A;
}
div.cf.cf-calendrier .cf-cal-noresult {
	padding: 7px 10px;
	font-size: 13px;
	color: #5A6B80;
}
div.cf.cf-calendrier ul.cf-cal-chips {
	list-style: none;
	margin: 10px 0 0;
	padding: 0;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
div.cf.cf-calendrier .cf-cal-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #E1F4EC;
	color: #00804A;
	border-radius: 999px;
	padding: 4px 6px 4px 12px;
	font-size: 12.5px;
	font-weight: 700;
}
div.cf.cf-calendrier .cf-cal-chip-x {
	background: none;
	border: none;
	color: #00804A;
	font-size: 15px;
	line-height: 1;
	padding: 0 4px;
}
div.cf.cf-calendrier .cf-cal-form span.error {
	display: block;
	color: #ED2224;
	margin-top: 4px;
}
div.cf.cf-calendrier .cf-cal-cancel {
	margin-left: 10px;
}
div.cf.cf-calendrier .cf-cal-when,
div.cf.cf-calendrier .cf-cal-repeat {
	font-size: 13px;
	color: #5A6B80;
	margin: 0 0 6px;
}
div.cf.cf-calendrier .cf-cal-body {
	background: #fff;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 18px 20px;
	margin: 14px 0;
}
div.cf.cf-calendrier .cf-cal-body p {
	margin: 0 0 12px;
	font-size: 14px;
	color: #3C4B5E;
}
div.cf.cf-calendrier .cf-cal-body p:last-child {
	margin-bottom: 0;
}
div.cf.cf-calendrier ul.cf-cal-guestlist {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 13.5px;
	color: #3C4B5E;
}
div.cf.cf-calendrier ul.cf-cal-guestlist li {
	padding: 4px 0;
}
div.cf.cf-calendrier .cf-cal-guests,
div.cf.cf-calendrier .cf-cal-occurrences {
	margin-top: 18px;
}
div.cf.cf-calendrier .cf-cal-acts {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	margin-top: 18px;
}
div.cf.cf-calendrier .cf-cal-link {
	font-size: 13px;
}
div.cf.cf-calendrier .cf-cal-del {
	margin: 0;
}
div.cf.cf-calendrier a:focus,
div.cf.cf-calendrier button:focus {
	outline: 2px solid #00804A;
	outline-offset: 2px;
}
@media (max-width: 767px) {
	div.cf.cf-calendrier .cf-cal-head .btn {
		width: 100%;
	}
	div.cf.cf-calendrier table.cf-cal,
	div.cf.cf-calendrier table.cf-cal tbody,
	div.cf.cf-calendrier table.cf-cal tr {
		display: block;
		border: none;
	}
	div.cf.cf-calendrier table.cf-cal thead {
		display: none;
	}
	div.cf.cf-calendrier .cf-cal-cell {
		display: block;
		height: auto;
		min-height: 0;
		border-left: none;
		border-top: 1px solid #DFDFDF;
		padding: 10px 12px;
	}
	div.cf.cf-calendrier .cf-cal-cell.is-empty,
	div.cf.cf-calendrier .cf-cal-cell.is-outside {
		display: none;
	}
	/* :has() = amélioration progressive : sans prise en charge, les jours vides restent affichés. */
	div.cf.cf-calendrier .cf-cal-cell:not(.is-today):not(:has(.cf-ev)) {
		display: none;
	}
	div.cf.cf-calendrier .cf-cal-nav {
		justify-content: center;
		text-align: center;
	}
	div.cf.cf-calendrier .cf-cal-times {
		flex-direction: column;
		gap: 0;
	}
	div.cf.cf-calendrier .cf-cal-acts {
		flex-direction: column;
		align-items: stretch;
		gap: 10px;
	}
	div.cf.cf-calendrier .cf-cal-acts .btn,
	div.cf.cf-calendrier .cf-cal-form .btn {
		width: 100%;
	}
	div.cf.cf-calendrier .cf-cal-cancel {
		margin: 10px 0 0;
	}
}

/* Le thème pose une puce ▪ sur chaque li de div.sub (main.css) : les listes du calendrier s'en passent. */
div.cf.cf-calendrier ul.cf-cal-list li:before,
div.cf.cf-calendrier ul.cf-cal-guestlist li:before,
div.cf.cf-calendrier ul.cf-cal-results li:before,
div.cf.cf-calendrier ul.cf-cal-chips li:before {
	content: none;
}

/* CF-T48 §5, addendum §12 — navigation en place et modales (commit 3) */
div.cf.cf-calendrier #cf-cal-main[aria-busy="true"] {
	/* Dimming only — pas de pointer-events:none, sinon un clic rapide sur
	   « Mois précédent »/« suivant » pendant une requête en vol est avalé
	   silencieusement par le hit-testing du navigateur. loadMain() annule
	   la requête en cours (mainXhr.abort()) au lieu de bloquer l'input. */
	opacity: .5;
}
div.cf.cf-calendrier .cf-cal-modal {
	background: rgba(0, 0, 0, .5); /* fond assombri : la modale est ouverte avec backdrop: false */
	overflow-y: auto;
}
div.cf.cf-calendrier .cf-cal-modal .modal-dialog {
	margin: 40px auto;
}
div.cf.cf-calendrier .cf-cal-modal .modal-content {
	position: relative;
	padding: 20px 20px 24px;
}
div.cf.cf-calendrier .cf-cal-modal .cf-cal-close {
	position: absolute;
	right: 10px;
	top: 6px;
	border: 0;
	background: none;
	font-size: 28px;
	line-height: 1;
	color: #555;
	cursor: pointer;
	padding: 4px 8px;
}
div.cf.cf-calendrier .cf-cal-modal .cf-cal-close:hover,
div.cf.cf-calendrier .cf-cal-modal .cf-cal-close:focus {
	color: #000;
}
div.cf.cf-calendrier .cf-cal-modal .cf-cal-title {
	padding-right: 36px;
}
div.cf.cf-calendrier .cf-cal-confirm h2 {
	margin-top: 0;
}
div.cf.cf-calendrier .cf-cal-confirm p {
	margin: 0 0 16px;
}
div.cf.cf-calendrier .cf-cal-confirm .btn {
	margin-right: 8px;
}
div.cf.cf-calendrier .cf-cal-form-alert {
	margin-bottom: 18px;
}
div.cf.cf-calendrier .cf-cal-form-alert ul {
	margin: 0;
	padding-left: 18px;
}

/* CF-T48 §8.6 — Membres et rôles (admin) */
div.cf.cf-membres-roles .cf-mr-count {
	color: #5A6B80;
	font-size: 14px;
	margin: -6px 0 18px;
}
div.cf.cf-membres-roles .cf-mr-toolbar {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 16px;
}
div.cf.cf-membres-roles .cf-mr-toolbar .form-control {
	border: 1px solid #DFDFDF;
	border-radius: 999px;
	padding: 8px 15px;
	height: auto;
	font-size: 14px;
	box-shadow: none;
	width: auto;
}
div.cf.cf-membres-roles .cf-mr-toolbar #cf-mr-add-open {
	margin-left: auto;
}
div.cf.cf-membres-roles .cf-mr-empty,
div.cf.cf-membres-roles #cf-mr-none {
	background: #E1F4EC;
	border-radius: 12px;
	padding: 18px;
	color: #111C2B;
}
div.cf.cf-membres-roles table.table select.form-control {
	width: auto;
	display: inline-block;
}
div.cf.cf-membres-roles .cf-mr-name-edit {
	display: inline-flex;
	gap: 6px;
	align-items: center;
	flex-wrap: wrap;
}
div.cf.cf-membres-roles .cf-mr-name-edit .form-control {
	width: 120px;
	display: inline-block;
}
div.cf.cf-membres-roles .cf-mr-name-open {
	white-space: nowrap;
}
div.cf.cf-membres-roles tr.cf-mr-row-template {
	display: none;
}
div.cf.cf-membres-roles .cf-mr-modal {
	background: rgba(0, 0, 0, .5);
	overflow-y: auto;
}
div.cf.cf-membres-roles .cf-mr-modal .modal-dialog {
	margin: 40px auto;
}
div.cf.cf-membres-roles .cf-mr-modal .modal-content {
	position: relative;
	padding: 20px 20px 24px;
}
div.cf.cf-membres-roles .cf-mr-modal .cf-mr-close {
	position: absolute;
	right: 10px;
	top: 6px;
	border: 0;
	background: none;
	font-size: 28px;
	line-height: 1;
	color: #555;
	cursor: pointer;
	padding: 4px 8px;
}
div.cf.cf-membres-roles .cf-mr-modal .cf-mr-close:hover,
div.cf.cf-membres-roles .cf-mr-modal .cf-mr-close:focus {
	color: #000;
}
div.cf.cf-membres-roles .cf-mr-modal .cf-mr-title {
	padding-right: 36px;
}
div.cf.cf-membres-roles .cf-mr-add-password {
	background: #FFF7E0;
	border-radius: 8px;
	padding: 12px;
}
@media (max-width: 767px) {
	div.cf.cf-membres-roles .cf-mr-toolbar .form-control,
	div.cf.cf-membres-roles .cf-mr-toolbar #cf-mr-add-open {
		width: 100%;
	}
	div.cf.cf-membres-roles .cf-mr-toolbar #cf-mr-add-open {
		margin-left: 0;
	}
}
