/* SCF Membres – s'appuie sur la palette globale Kadence (Personnaliser > Couleurs). */
.scf-carte {
	background: var(--global-palette9, #fff);
	border: 1px solid var(--global-gray-400, #e2e8f0);
	border-radius: 8px;
	padding: 1.25em 1.5em;
	margin: 0 0 1.25em;
}
.scf-bouton,
.scf-formulaire button[type="submit"],
.scf-connexion #wp-submit {
	display: inline-block;
	background: var(--global-palette1, #2b6cb0);
	color: var(--global-palette9, #fff) !important;
	border: 2px solid var(--global-palette1, #2b6cb0);
	border-radius: 4px;
	padding: .5em 1.2em;
	text-decoration: none !important;
	font-weight: 600;
	cursor: pointer;
	line-height: 1.4;
}
.scf-bouton:hover,
.scf-formulaire button[type="submit"]:hover,
.scf-connexion #wp-submit:hover { background: var(--global-palette2, #215387); border-color: var(--global-palette2, #215387); }
.scf-bouton--secondaire { background: transparent; color: var(--global-palette1, #2b6cb0) !important; }
.scf-bouton--secondaire:hover { color: var(--global-palette9, #fff) !important; }

.scf-reserve {
	border-left: 4px solid var(--global-palette1, #2b6cb0);
	background: var(--global-palette7, #edf2f7);
	padding: 1em 1.25em;
	border-radius: 0 6px 6px 0;
	margin: 1em 0;
}
.scf-reserve__titre { font-weight: 700; color: var(--global-palette3, #1a202c); margin-bottom: .4em; }
.scf-reserve__titre::before { content: "🔒 "; }

.scf-alerte { color: #b32d2e; font-weight: 600; }
.scf-ok { color: #1e7e34; }
.scf-discret { color: var(--global-palette5, #4a5568); font-size: .9em; }
.scf-piege { position: absolute !important; left: -9999px !important; }

.scf-formulaire label { display: block; font-weight: 600; color: var(--global-palette3, #1a202c); }
.scf-formulaire input[type="text"], .scf-formulaire input[type="email"], .scf-formulaire input[type="tel"],
.scf-formulaire input[type="number"], .scf-formulaire input[type="date"], .scf-formulaire textarea, .scf-formulaire select { width: 100%; margin-top: .3em; font-weight: 400; }
.scf-formulaire input[type="radio"], .scf-formulaire input[type="checkbox"] { margin-right: .4em; }
.scf-formulaire fieldset { border: 1px solid var(--global-gray-400, #e2e8f0); border-radius: 6px; padding: .75em 1em; margin: 0 0 1em; }
.scf-formulaire fieldset label { font-weight: 400; }
.scf-colonnes { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 1.25em; }

.scf-grille { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1.25em; }
.scf-grille .scf-carte { margin: 0; }

/* Lettres */
.scf-lettre__couv img { max-width: 220px; height: auto; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.scf-lettre__legende { font-style: italic; color: var(--global-palette5, #4a5568); }
.scf-sommaire { padding-left: 1.4em; }
.scf-sommaire li { display: flex; justify-content: space-between; gap: 1em; border-bottom: 1px dotted var(--global-gray-400, #e2e8f0); padding: .25em 0; }
.scf-sommaire__page { white-space: nowrap; color: var(--global-palette5, #4a5568); }
.scf-lettres__annee { border: 1px solid var(--global-gray-400, #e2e8f0); border-radius: 6px; margin-bottom: .6em; padding: .4em 1em; }
.scf-lettres__annee summary { cursor: pointer; font-weight: 700; }
.scf-lettres__annee ul { margin: .5em 0; }
.scf-lettres__item { margin-bottom: .5em; }
.scf-filtre { width: 100%; }

/* Médiathèque */
.scf-filtres { display: flex; flex-wrap: wrap; gap: .5em; align-items: center; margin-bottom: 1em; }
.scf-filtres input[type="search"] { flex: 1 1 220px; }
.scf-media__vignette { display: block; position: relative; overflow: hidden; border-radius: 6px; aspect-ratio: 16 / 10; background: #10141a; }
.scf-media__vignette img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s; }
.scf-media__vignette:hover img { transform: scale(1.03); }

.scf-media__titre { font-size: 1.05em; margin: .6em 0 .3em; }
.scf-media__meta { color: var(--global-palette5, #4a5568); font-size: .85em; margin: 0 0 .4em; }
.scf-media__desc { font-size: .9em; }
.scf-media--reserve .scf-media__vignette img { filter: grayscale(.6); opacity: .8; }
.scf-media__cadenas { font-size: .85em; font-weight: 600; }
.scf-media__cadenas::before { content: "🔒 "; }
.scf-pagination { margin-top: 1.5em; text-align: center; }
.scf-pagination .page-numbers { padding: .3em .6em; }

/* Badge dans les listes d'articles Kadence */
.scf-acces-membres .entry-title a::after,
.scf-acces-redaction .entry-title a::after,
.scf-acces-ca .entry-title a::after { content: " 🔒"; font-size: .8em; }

/* ---------- Page Liens ---------- */
.entry-content .scf-liens { --scf-r: 10px; }
.entry-content .scf-liens .scf-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.entry-content .scf-liens-barre { position: sticky; top: 0; z-index: 5; background: #fff; padding: .8em 0 .4em; }
.entry-content .scf-liens-q {
	width: 100%; color: #1a202c; font-size: 1.05em; padding: .8em 1em .8em 2.6em; border-radius: 999px;
	border: 2px solid #dbe3ec; background: #f1f5f9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23718096' stroke-width='2.2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 1em 50%;
}
.entry-content .scf-liens-q:focus { outline: none; border-color: #E5141B; background-color: #151A22; color: #fff; }
.entry-content .scf-liens-vide { text-align: center; color: #556270; margin: 1em 0 0; }
.entry-content .scf-liens-cats { display: flex; flex-wrap: wrap; gap: .45em; margin: .6em 0 1.6em; }
.entry-content .scf-puce {
	border: 1px solid #dbe3ec; background: #fff; color: #1a202c;
	border-radius: 999px !important; padding: .35em .85em; box-shadow: none; font-size: .88em; cursor: pointer; line-height: 1.4; transition: background .15s, color .15s, border-color .15s;
}
.entry-content .scf-puce span { display: inline-block; min-width: 1.6em; margin-left: .25em; padding: 0 .4em; border-radius: 999px; background: #f1f5f9; color: #556270; font-size: .85em; }
.entry-content .scf-puce:hover { border-color: #E5141B; color: #fff; background: rgba(229,20,27,.12); }
.entry-content .scf-puce.est-active { background: #E5141B; border-color: #E5141B; color: #fff; }
.entry-content .scf-puce.est-active span { background: rgba(255,255,255,.22); color: inherit; }
.entry-content .scf-liens-groupe { margin: 0 0 2.2em; scroll-margin-top: 140px; }
.entry-content .scf-liens-groupe[hidden], .entry-content .scf-lien[hidden] { display: none !important; }
.entry-content .scf-liens-h { font-size: 1.3em; margin: 0 0 .7em; padding-bottom: .35em; border-bottom: 2px solid #dbe3ec; display: flex; align-items: center; gap: .4em; }
.entry-content .scf-liens-h small { font-size: .6em; font-weight: 600; color: #556270; background: #f1f5f9; border-radius: 999px; padding: .15em .6em; }
.entry-content .scf-liens-grille { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: .8em; }
.entry-content .scf-lien a {
	display: flex; gap: .8em; align-items: flex-start; height: 100%; padding: .85em .95em; text-decoration: none;
	background: #fff; border: 1px solid #dbe3ec; border-radius: var(--scf-r);
	color: #2d3748; transition: transform .15s, box-shadow .15s, border-color .15s;
}
.entry-content .scf-lien a:hover, .entry-content .scf-lien a:focus-visible { transform: translateY(-2px); background: #1B2230; box-shadow: -3px -3px 0 #0062FF, 3px 3px 0 #E5141B; border-color: transparent; }
.entry-content .scf-lien a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.entry-content .scf-lien-init {
	flex: 0 0 auto; width: 2.4em; height: 2.4em; border-radius: 8px; display: grid; place-items: center;
	font-weight: 700; font-size: 1.05em; color: #fff; background: var(--global-palette1, #2b6cb0);
}
.entry-content .scf-lien-init.t1 { background: #c53030; }   /* rouge anaglyphe */
.entry-content .scf-lien-init.t2 { background: #0f8b8d; }   /* cyan anaglyphe */
.entry-content .scf-lien-init.t3 { background: var(--global-palette2, #215387); }
.entry-content .scf-lien-corps { display: flex; flex-direction: column; gap: .2em; min-width: 0; }
.entry-content .scf-lien-corps strong { color: #1a202c; font-size: .98em; line-height: 1.3; overflow-wrap: anywhere; }
.entry-content .scf-lien a:hover strong { color: #fff; text-decoration: underline; text-decoration-color: #E5141B; text-underline-offset: 3px; }
.entry-content .scf-lien-desc { font-size: .85em; line-height: 1.4; color: #556270; }
.entry-content .scf-lien-hote { font-size: .78em; color: #7a8796; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.entry-content .scf-liens-proposer { margin-top: 2em; border: 1px dashed #7a8796; border-radius: var(--scf-r); padding: .8em 1.2em; background: #f1f5f9; }
.entry-content .scf-liens-proposer summary { cursor: pointer; font-weight: 600; color: #fff; }
.entry-content .scf-liens-proposer summary:hover { color: #FF6B6E; }
.entry-content .scf-liens-proposer[open] summary { margin-bottom: .6em; }
.entry-content .scf-liens-proposer table { width: 100%; border: 0; }
.entry-content .scf-liens-proposer td, .entry-content .scf-liens-proposer th { border: 0; padding: .3em 0; background: none; }
.entry-content .scf-liens-proposer input[type=text], .entry-content .scf-liens-proposer input[type=url], .entry-content .scf-liens-proposer textarea, .entry-content .scf-liens-proposer select { width: 100%; border-radius: 6px; }
@media (max-width: 600px) { .entry-content .scf-liens-grille { grid-template-columns: 1fr; } .entry-content .scf-liens-q { font-size: 1em; } }

.entry-content .scf-liens-q::placeholder { color: #7a8796; }
.entry-content .scf-lien { margin: 0; padding: 0; }

/* Liens : capture d'écran du site */
.entry-content .scf-lien--capture a { flex-wrap: wrap; overflow: hidden; }
.entry-content .scf-lien-capture { flex: 0 0 calc(100% + 1.9em); display: block; aspect-ratio: 16 / 10; overflow: hidden; margin: -.85em -.95em .3em; background: #0E1116; border-bottom: 1px solid #222833; }
.entry-content .scf-lien-capture img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; transition: transform .3s ease; }
.entry-content .scf-lien--capture a:hover .scf-lien-capture img { transform: scale(1.04); }
.entry-content .scf-lien--capture .scf-lien-init { display: none; }
.entry-content .scf-lien--mort a { opacity: .6; border-style: dashed; }
.entry-content .scf-lien-alerte { flex: 0 0 100%; font-size: .8em; color: #FF6B6E; font-weight: 600; }
