/* =========================================================
   Fiche ressource individuelle - disponibilité en prêt
   ========================================================= */

.cc-fiche-pret {
	background: #f4f9fb;
	border-left: 6px solid #9cc540;
	border-radius: 16px;
	padding: 22px 24px;
	margin: 28px 0;
	color: #285473;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
}

.cc-fiche-pret-titre {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
	color: #285473;
	font-size: 22px;
	font-weight: 800;
	line-height: 1.2;
}

.cc-fiche-pret-titre i {
	color: #9cc540;
	font-size: 24px;
}

.cc-fiche-pret-contenu {
	display: grid;
	gap: 12px;
}

.cc-fiche-pret-ligne {
	margin: 0;
	font-size: 16px;
	line-height: 1.45;
}

.cc-fiche-pret-ligne strong {
	display: block;
	margin-bottom: 4px;
	color: #285473;
	font-weight: 800;
}

.cc-fiche-pret-ligne span {
	display: block;
	color: #333;
}



/* =========================================================
   DOCUMENTS COMPLÉMENTAIRES DANS LA PRÉSENTATION
   ========================================================= */

.cc-document-complementaire-wrap {
	margin: 14px 0;
}


a.cc-document-complementaire {
	display: inline-flex;
	align-items: center;
	gap: 9px;

	max-width: 100%;

	padding: 9px 14px;

	background: #f4f9fc;

	border: 1px solid rgba(40, 84, 115, 0.22);
	border-radius: 8px;

	color: #285473 !important;

	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;

	text-decoration: none !important;

	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}


a.cc-document-complementaire::before {
	content: "📄";

	flex: 0 0 auto;

	font-size: 16px;
	line-height: 1;
}


a.cc-document-complementaire:hover {
	background: #eef5f7;

	border-color: #285473;

	color: #285473 !important;

	box-shadow:
		0 3px 9px rgba(40, 84, 115, 0.10);
}

/* =========================================================
   LIENS VERS DES FICHIERS TÉLÉCHARGEABLES
   ========================================================= */

a:is(
	[href*=".pdf" i],
	[href*=".doc" i],
	[href*=".docx" i],
	[href*=".odt" i],
	[href*=".xls" i],
	[href*=".xlsx" i],
	[href*=".ods" i],
	[href*=".ppt" i],
	[href*=".pptx" i],
	[href*=".odp" i],
	[href*=".zip" i],
	[download]
) {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;

	width: auto !important;
	min-height: 0 !important;

	padding: 4px 10px 4px 6px !important;
	margin: 3px 0 6px !important;

	background: #f3f7f9 !important;
	border: 1px solid rgba(40, 84, 115, 0.18) !important;
	border-radius: 999px !important;

	color: #285473 !important;

	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;

	text-decoration: none !important;
	box-shadow: none !important;

	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease,
		transform 0.2s ease !important;
}


/* Icône téléchargement À GAUCHE */

a:is(
	[href*=".pdf" i],
	[href*=".doc" i],
	[href*=".docx" i],
	[href*=".odt" i],
	[href*=".xls" i],
	[href*=".xlsx" i],
	[href*=".ods" i],
	[href*=".ppt" i],
	[href*=".pptx" i],
	[href*=".odp" i],
	[href*=".zip" i],
	[download]
)::before {
	content: "↓" !important;

	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 22px !important;
	height: 22px !important;
	flex: 0 0 22px !important;

	background: #285473 !important;
	color: #fff !important;

	border-radius: 50% !important;

	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1 !important;

	transition:
		transform 0.2s ease,
		background-color 0.2s ease,
		color 0.2s ease !important;
}


/* Supprime l'icône éventuelle déjà placée à droite */

a:is(
	[href*=".pdf" i],
	[href*=".doc" i],
	[href*=".docx" i],
	[href*=".odt" i],
	[href*=".xls" i],
	[href*=".xlsx" i],
	[href*=".ods" i],
	[href*=".ppt" i],
	[href*=".pptx" i],
	[href*=".odp" i],
	[href*=".zip" i],
	[download]
)::after {
	content: none !important;
}


/* Survol */

a:is(
	[href*=".pdf" i],
	[href*=".doc" i],
	[href*=".docx" i],
	[href*=".odt" i],
	[href*=".xls" i],
	[href*=".xlsx" i],
	[href*=".ods" i],
	[href*=".ppt" i],
	[href*=".pptx" i],
	[href*=".odp" i],
	[href*=".zip" i],
	[download]
):hover {
	background: #285473 !important;
	color: #fff !important;
	border-color: #285473 !important;

	transform: translateX(3px);
}


/* Petite animation de la flèche */

a:is(
	[href*=".pdf" i],
	[href*=".doc" i],
	[href*=".docx" i],
	[href*=".odt" i],
	[href*=".xls" i],
	[href*=".xlsx" i],
	[href*=".ods" i],
	[href*=".ppt" i],
	[href*=".pptx" i],
	[href*=".odp" i],
	[href*=".zip" i],
	[download]
):hover::before {
	background: #fff !important;
	color: #285473 !important;

	transform: translateY(2px);
}

/* =========================================================
   BLOC "À PROPOS DE LA RESSOURCE"
   ========================================================= */


/* Espace AVANT le titre */
.elementor-widget-container h3:has(+ p + ul) {
	margin-top: 20px !important;
	margin-bottom: 4px !important;
}


/* Description sous le titre */
.elementor-widget-container h3:has(+ p + ul) + p {
	margin-top: 0 !important;
	margin-bottom: 10px !important;
}


/* Liste Licence / Source */
.elementor-widget-container h3:has(+ p + ul) + p + ul {
	margin-top: 0 !important;
	margin-bottom: 10px !important;
}


/* On neutralise les grosses marges du thème */
.elementor-widget-container h3:has(+ p + ul) + p + ul > li {
	margin: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}


/* Petit espace UNIQUEMENT entre les deux puces */
.elementor-widget-container h3:has(+ p + ul) + p + ul > li + li {
	margin-top: 6px !important;
}


/* Si les li contiennent des paragraphes */
.elementor-widget-container h3:has(+ p + ul) + p + ul > li > p {
	margin: 0 !important;
}


/* Conditions de réutilisation */
.elementor-widget-container h3:has(+ p + ul) + p + ul + p {
	margin-top: 0 !important;
	margin-bottom: 16px !important;
}

/* Auteur et structure à l’origine de la proposition. */
.ccep-ressource-auteur {
  margin: 12px 0 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: #526471;
}

