/* Listes [publications_gem] : même présentation que la page « Publications scientifiques depuis 2018 ».
   Sélecteurs préfixés par .gem-refs et remises à zéro : le thème (Tempera) stylise listes, images et formulaires. */
.gem-refs {
	display: grid; grid-template-columns: minmax(170px, 1fr) 3.4fr; gap: 0;
	max-width: 1280px; margin: 16px auto 10px; background: #fff; box-sizing: border-box;
	color: #5f6368; font-size: 13.5px; line-height: 1.5; text-align: left;
}
.gem-refs.gem-refs-sans-filtres { grid-template-columns: 1fr; }
.gem-refs * { box-sizing: border-box; }

/* Marge de gauche : filtres. */
.gem-refs-cote { padding: 14px 12px; }
.gem-refs .gem-refs-filtre { margin: 0 0 10px; }
.gem-refs .gem-refs-filtre summary {
	position: relative; display: block; cursor: pointer; list-style: none; border-radius: 5px;
	padding: .5em 2em .5em .7em; background: #f5f5f5; color: #3c4043;
	font-size: .85em; font-weight: 600; letter-spacing: .02em; text-transform: uppercase;
}
.gem-refs .gem-refs-filtre summary::-webkit-details-marker { display: none; }
.gem-refs .gem-refs-filtre summary::marker { content: ""; }
.gem-refs .gem-refs-filtre summary::after {
	content: ""; position: absolute; right: .9em; top: 50%; width: .45em; height: .45em;
	border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
	transform: translateY(-70%) rotate(45deg); transition: transform .15s;
}
.gem-refs .gem-refs-filtre[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.gem-refs .gem-refs-filtre-corps { padding: .5em .2em .2em .3em; }
.gem-refs .gem-refs-opt { display: flex; align-items: center; gap: .5em; padding: 3px 2px; margin: 0; font-size: .95em; color: #5f6368; font-weight: normal; cursor: pointer; }
.gem-refs .gem-refs-opt input { accent-color: #6c757d; margin: 0; flex: none; }
.gem-refs .gem-refs-opt span { flex: 1; }
.gem-refs .gem-refs-opt small { color: #9aa0a6; font-size: .9em; }

/* Colonne principale. */
.gem-refs-principal { min-width: 0; }
.gem-refs .gem-refs-recherche { padding: 14px 14px 10px; display: flex; gap: 8px; }
.gem-refs .gem-refs-texte {
	flex: 1; min-width: 0; margin: 0; padding: .5em .8em; border: 1px solid #ccc; border-radius: 5px;
	font-size: .95em; color: #3c4043; font-family: inherit; background: #fff; box-shadow: none; height: auto;
}
.gem-refs .gem-refs-texte:focus { outline: 2px solid #c8d4e0; outline-offset: 0; }
.gem-refs .gem-refs-taille {
	flex: none; margin: 0; padding: .5em .6em; border: 1px solid #ccc; border-radius: 5px;
	font-size: .9em; color: #3c4043; font-family: inherit; background: #fff; height: auto;
}

.gem-refs ul.gem-refs-liste { margin: 0; padding: 0; list-style: none; border-top: 1px solid #e6e8eb; }
.gem-refs .gem-refs-liste li.gem-refs-item {
	display: flex; align-items: flex-start; gap: .9em; margin: 0; padding: .6em 14px;
	border-bottom: 1px solid #e6e8eb; list-style: none; background: none;
}
.gem-refs .gem-refs-liste li.gem-refs-item::before { content: none; display: none; }
.gem-refs .gem-refs-item:hover { background: #fafafa; }
.gem-refs .gem-refs-icones { flex: none; width: 100px; display: grid; grid-template-columns: repeat(5, 18px); gap: 2px; padding-top: 2px; }
.gem-refs .gem-refs-slot { width: 18px; height: 18px; display: flex; align-items: center; justify-content: center; }
.gem-refs .gem-refs-slot a { display: inline-flex; line-height: 0; border: 0; box-shadow: none; }
.gem-refs .gem-refs-icones img {
	height: 18px; width: auto; max-width: none; margin: 0; padding: 0; border: 0; border-radius: 0;
	box-shadow: none; background: none; vertical-align: middle;
}
.gem-refs .gem-refs-icones img.gem-refs-cc { width: 18px; height: auto; }
.gem-refs .gem-refs-corps { flex: 1; min-width: 0; }
.gem-refs p.gem-refs-meta { margin: 0 0 .3em; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .5em; }
.gem-refs .gem-refs-type { padding: .15em .5em; border-radius: 3px; color: #fff; font-size: .85em; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; line-height: 1.4; }
.gem-refs .gem-refs-annee { color: #5f6368; font-size: .9em; }
.gem-refs p.gem-refs-cite { margin: 0; padding: 0; font-size: 1em; line-height: 1.5; color: #5f6368; overflow-wrap: anywhere; }
.gem-refs .gem-refs-cite b { color: #3c4043; font-weight: 700; }
.gem-refs .gem-refs-cite a, .gem-refs .gem-refs-cite a:visited { color: #12395b; text-decoration: none; border: 0; }
.gem-refs .gem-refs-cite a:hover { text-decoration: underline; }
.gem-refs .gem-refs-resume { display: inline-block; vertical-align: middle; cursor: help; margin-left: 4px; line-height: 0; }
.gem-refs .gem-refs-resume svg { display: inline-block; }

/* Pagination. */
.gem-refs .gem-refs-pages ul { display: flex; flex-wrap: wrap; margin: 0; padding: 14px; list-style: none; }
.gem-refs .gem-refs-pages li { margin: 0; padding: 0; list-style: none; }
.gem-refs .gem-refs-pages li::before { content: none; display: none; }
.gem-refs .gem-refs-pages li + li a, .gem-refs .gem-refs-pages li + li span { margin-left: -1px; }
.gem-refs .gem-refs-pages a, .gem-refs .gem-refs-pages span {
	display: block; min-width: 1.9em; padding: .3em .5em; border: 1px solid #ccc;
	color: #5f6368; font-size: 1em; text-align: center; text-decoration: none; background: #fff;
}
.gem-refs .gem-refs-pages li:first-child > * { border-radius: 5px 0 0 5px; }
.gem-refs .gem-refs-pages li:last-child > * { border-radius: 0 5px 5px 0; }
.gem-refs .gem-refs-pages a:hover { background: #f5f5f5; }
.gem-refs .gem-refs-pages span[aria-current] { background: #6c757d; border-color: #6c757d; color: #fff; }

.gem-refs .gem-refs-compte { padding: 10px 14px; color: #5f6368; border-top: 1px solid #e6e8eb; font-size: .9em; }

.gem-refs-export { text-align: center; margin: 0 0 30px; }
.gem-refs-export .gem-refs-csv {
	display: inline-block; border-radius: 5px; border: 1px solid #6c757d; background: transparent;
	color: #6c757d; padding: 8px 16px; font-family: inherit; font-size: .95em; cursor: pointer; text-transform: none; box-shadow: none;
}
.gem-refs-export .gem-refs-csv:hover { background: #6c757d; color: #fff; }

.gem-refs-popup {
	position: fixed; z-index: 100000; width: 320px; max-width: 70vw;
	background: #12395b; color: #fff; font-size: 13.5px; line-height: 1.4; text-align: left;
	padding: 10px 12px; border-radius: 8px; box-shadow: 0 6px 16px rgba(0, 0, 0, .25);
}
.gem-refs-vide { color: #5f6368; font-style: italic; }

@media (max-width: 640px) {
	.gem-refs { grid-template-columns: 1fr; }
	.gem-refs .gem-refs-recherche { flex-wrap: wrap; }
}
