/* ================================================================
   Bibliothèque du Jockey Club — VuFind theme overrides
   Inspired by jockeyclub_vufind_adaptation_v3/style.css
   ================================================================ */

@font-face { font-family:'Cicero'; src:url('../fonts/Cicer.ttf') format('truetype'); font-weight:400; font-style:normal }
@font-face { font-family:'Cicero'; src:url('../fonts/CicerIta.ttf') format('truetype'); font-weight:400; font-style:italic }
@font-face { font-family:'Cicero'; src:url('../fonts/CicerMed.ttf') format('truetype'); font-weight:500; font-style:normal }
@font-face { font-family:'Cicero'; src:url('../fonts/CicerMedIta.ttf') format('truetype'); font-weight:500; font-style:italic }
@font-face { font-family:'Cicero'; src:url('../fonts/CicerBol.ttf') format('truetype'); font-weight:700; font-style:normal }
@font-face { font-family:'Cicero'; src:url('../fonts/CicerBolIta.ttf') format('truetype'); font-weight:700; font-style:italic }

/* --- Variables --- */
:root {
  --jc-green:       #006E73;
  --jc-green-2:     #005F27;
  --jc-blue:        #00A3C4;
  --jc-gold:        #C2A712;
  --sec-blue:       #148FD3;
  --sec-green:      #58B533;
  --ink:            #132628;
  --muted:          #62767a;
  --line:           #dbe5e4;
  --line-strong:    #c9d8d6;
  --surface:        #ffffff;
  --surface-soft:   #f5f8f7;
  --surface-tint:   #eef6f5;
  --shadow:         0 14px 34px rgba(0,76,80,.08);
  --radius-xl:      28px;
  --radius-lg:      22px;
  --radius-md:      16px;
}

/* ================================================================
   BODY
   ================================================================ */
body {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at top right, rgba(0,163,196,.06), transparent 24%),
    linear-gradient(180deg, #f8fbfa 0%, #f3f7f6 100%);
}
a { color: var(--jc-green); }

/* ================================================================
   HEADER — nav + searchbox
   ================================================================ */
header.hidden-print {
  position: relative;
  overflow: visible; /* visible pour que les dropdowns (langue, etc.) passent au premier plan */
  background: var(--jc-green);
  color: #fff;
  box-shadow: 0 16px 42px rgba(0,76,80,.16);
  border-bottom: 4px solid var(--jc-gold);
}

/* Effets de lumière */
header.hidden-print::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.08), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0) 32%);
  pointer-events: none;
  z-index: 0;
}

.site-header {
  display: flex;
  align-items: stretch;
  gap: 1rem;
}

.site-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.site-logo img {
  max-width: 140px;
  height: auto;
  opacity: 0.6;
}

.site-header-content , .site-header-content .navbar-brand {
  flex: 1;
  min-width: 500px;
}

.site-header .navbar-brand {
  white-space: normal;
}

.site-header .searchbox {
  width: 100%;
}

/* Mobile */
@media (max-width: 767px) {
  .site-header {
    flex-direction: column;
    align-items: center;
  }

  .site-logo {
    text-align: center;
    width: 100%;
  }

  .site-logo img {
    max-width: 140px;
  }

  .site-header-content {
    width: 100%;
    flex: none;
    min-width: 0;
    display: block;
  }

  .site-header nav {
    width: 100%;
  }

  .site-header .navbar-brand {
    max-width: calc(100% - 60px);
    font-size: 1rem;
  }

  .site-header .navbar-collapse {
    width: 100%;
  }

  .site-header .navbar-nav {
    width: 100%;
  }

  .site-header .search {
    width: 100%;
    margin-top: 0.75rem;
  }
  
  .site-header-content .navbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  
  .site-header-content .navbar-nav {
    width: 100%;
    align-items: flex-end;
  }

  .site-header-content .navbar-toggler {
    order: 2;
    margin-left: auto;
  }

  .site-header-content .navbar-brand {
    order: 1;
    flex: 1;
  }
  
  .site-header-content .navbar-collapse {
    order: 3;
    width: 100%;
    margin-top: 0.5rem;
    text-align: right;
  }
  
  .site-header-content .navbar-collapse li.nav-item {
    margin-top : 5px;
  }
  
  .site-header-content .dropdown-menu {
    right: 0;
    left: auto;
  }
}

/* Navbar fond transparent (header gère la couleur) */
.banner.navbar {
  background: transparent !important;
  border: none;
  padding: 18px 0 14px;
  position: relative;
  z-index: 100; /* supérieur au .search.navbar pour que les dropdowns passent au premier plan */
}

/* Nom de la bibliothèque */
.navbar-brand {
  font-family: 'Cicero', Georgia, serif !important;
  font-size: 1.72rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  line-height: 1;
  text-decoration: none;
  background-image : none!important;
}
.navbar-brand:hover { color: rgba(255,255,255,.85) !important; text-decoration: none; }

.navbar-brand .small{
    display: block;
    text-transform: uppercase;
    letter-spacing: .10em;
    font-size: .72rem;
    font-weight: 400;
    opacity: .82;
    margin-bottom: 4px;
    padding-top : 5px;
}


/* Liens du menu de navigation */
.banner .nav-link,
.banner .navbar-nav .nav-link {
  color: rgba(255,255,255,.92) !important;
  padding: 8px 14px !important;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  font-size: .93rem;
  margin-left: 6px;
  transition: background .15s;
}
.banner .nav-link:hover { background: rgba(255,255,255,.16) !important; text-decoration: none; }
.banner .navbar-toggler { color: #fff; border-color: rgba(255,255,255,.4); }
.banner .icon-link__label { color: #fff; }

/* Zone searchbox — continue le vert du header */
.search.container.navbar,
.search.navbar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  position: relative;
  z-index: 1;
  padding: 8px 0 24px;
}

/* Carte de recherche blanche */
.search .searchbox,
.searchbox {
  background: rgba(255,255,255,.97) !important;
  border: 1px solid rgba(255,255,255,.45) !important;
  border-radius: 26px !important;
  padding: 16px !important;
  box-shadow: 0 18px 36px rgba(0,54,57,.16) !important;
}

/* Grille du formulaire de recherche */
.searchForm-inputs {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 220px 160px !important;
  gap: 12px !important;
  align-items: center;
}
.searchForm-query { grid-column: 1; }
.searchForm_type  { grid-column: 2; }
.searchForm-inputs > button[type="submit"] { grid-column: 3; }
/* Lien recherche avancée — passe à la ligne suivante */
.advanced-search-link {
  grid-column: 1 / -1;
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(0,110,115,.08) !important;
  color: var(--jc-green) !important;
  font-size: .93rem;
  border: none !important;
  width: fit-content;
}
.advanced-search-link:hover { background: rgba(0,110,115,.14) !important; text-decoration: none; }

/* Input de recherche */
input.search-query,
input.searchForm_lookfor {
  height: 60px !important;
  border-radius: 18px !important;
  border: 1px solid var(--line-strong) !important;
  padding: 0 18px !important;
  font-size: 1rem !important;
  background: #fff !important;
  outline: none;
  width: 100%;
}
input.search-query:focus,
input.searchForm_lookfor:focus {
  border-color: var(--jc-blue) !important;
  box-shadow: 0 0 0 4px rgba(0,163,196,.10) !important;
}

/* Select type de recherche */
select.searchForm_type,
select.type {
  height: 60px !important;
  border-radius: 18px !important;
  border: 1px solid var(--line-strong) !important;
  padding: 0 18px !important;
  font-size: 1rem !important;
  background: #fff !important;
  outline: none;
  width: 100%;
}
select.searchForm_type:focus { border-color: var(--jc-blue) !important; }

/* Bouton "Rechercher" */
.searchForm-inputs > button[type="submit"],
#searchForm button[type="submit"] {
  height: 60px !important;
  border-radius: 18px !important;
  background: var(--jc-green-2) !important;
  border: none !important;
  color: #fff !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  padding: 0 24px !important;
  cursor: pointer;
  width: 100%;
}
.searchForm-inputs > button[type="submit"]:hover { background: #054c2a !important; }

/* ================================================================
   ZONE PRINCIPALE
   ================================================================ */
.main { padding: 24px 0 40px; }

.main .container,.main footer {
    background-color:initial!important; 
}

.icon-link__label{
    text-decoration: none;
}

/* ================================================================
   RÉSULTATS DE RECHERCHE
   ================================================================ */

/* Barre d'outils de résultats */
.search-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.search-stats { color: var(--muted); font-size: .94rem; }

/* Formulaire actions groupées — espacement */
#search-cart-form { margin-bottom: 16px; }

/* Barre "Tout sélectionner" */
.select-all-container,
.bulk-action-toolbar { margin-bottom: 8px; }

/* Liste des résultats */
ol.record-list,
ul.record-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Espacement entre la liste et la pagination */
.pagination-bar,
nav.search-pager,
.search-pager,
ul.pagination { margin-top: 24px !important; }

/* Carte résultat */
li.result {
  background: rgba(255,255,255,.92);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--shadow);
  margin-bottom: 20px !important;
  margin-top: 0 !important;
  border-left: 4px solid var(--jc-green) !important;
  padding: 20px !important;
  overflow: hidden;
}

ol.record-list > li.result:first-child,
ul.record-list > li.result:first-child { margin-top: 4px !important; }

/* Grille intérieure : couverture | contenu */
li.result .media {
  display: grid !important;
  grid-template-columns: 118px minmax(0,1fr) !important;
  gap: 20px !important;
  align-items: start;
}

/* Zone couverture */
li.result .media-left,
li.result .media-left.thumbnail,
li.result [class*="media-left"] {
  width: 118px !important;
  height: 172px !important;
  border-radius: 14px !important;
  overflow: hidden;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  box-shadow: 0 8px 20px rgba(19,38,40,.08);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
li.result .media-left img,
li.result .media-left .thumbnail img,
li.result .recordcover-wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 0;
}
li.result .recordcover-wrapper {
  width: 100%;
  height: 100%;
}

/* Titre du résultat */
li.result .resultItemLine1 h2,
li.result .result-body h2 {
  font-family: 'Cicero', Georgia, serif !important;
  font-size: 1.5rem !important;
  line-height: 1.08 !important;
  margin: 0 0 8px !important;
  font-weight: 700;
}
li.result .resultItemLine1 h2 a,
li.result .result-body h2 a {
  color: var(--jc-green) !important;
  text-decoration: none;
}
li.result .resultItemLine1 h2 a:hover { color: var(--jc-green) !important; }

/* Auteurs */
li.result .authors,
li.result .resultItemLine1 .authors {
  display: block;
  color: var(--muted);
  font-size: .95rem;
  margin-top: 4px;
  font-weight: 400;
}
li.result .authors a { font-weight: 600; color: var(--muted); }

/* Publication */
li.result .resultItemLine2 {
  color: var(--muted);
  font-size: .9rem;
  margin-top: 6px;
}

/* Format / chips */
li.result .format-list,
li.result .record-formats,
li.result .label {
  display: inline-flex;
  align-items: center;
  padding: 0px 10px;
  border-radius: 999px;
  background: var(--surface-tint);
  border: 1px solid #dde8e7;
  color: #355356;
  font-size: .8rem;
  font-weight: 700;
  margin: 0px 4px 0 0;
}


li.result .callnumAndLocation{
  margin-bottom: .5rem;
}

/* Badge commun : localisation et disponibilité */
li.result .location,
li.result .status {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}

/* Localisation — badge teal */
li.result .location {
  background: rgba(0,110,115,.10);
  color: var(--jc-green);
  border: 1px solid rgba(0,110,115,.20);
}

/* Disponible — badge vert */
li.result .status:has(.label-success) {
  background: rgba(88,181,51,.15);
  color: #2e6b14;
  border: 1px solid rgba(88,181,51,.4);
}

/* Emprunté / indisponible — badge rouge */
li.result .status:has(.label-danger) {
  background: rgba(194,0,0,.10);
  color: #a00;
  border: 1px solid rgba(194,0,0,.25);
}

/* Neutraliser le span interne injecté par le JS */
li.result .status .label {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
  line-height: inherit !important;
}

/* Localisation + formats côte à côte */
li.result .result-formats-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
li.result .callnumAndLocation {
  margin-top: 0;
}
li.result .location:empty,
li.result .status:empty {
  display: none !important;
}

/* Liens d'actions */
li.result .result-links {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 14px;
  width: 174px;
}
li.result .result-links a,
li.result .result-links button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 8px 14px;
  border-radius: 12px;
  font-size: .88rem;
  font-weight: 600;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink) !important;
  text-decoration: none;
  cursor: pointer;
  transition: background .15s;
}
li.result .result-links a:hover { background: var(--surface-soft); text-decoration: none; }

a.full-record-link.icon-link , a.mail-record.icon-link ,  a.print-record.icon-link  {
      border: none!important;
    background: rgba(194, 167, 18, .5)!important;
    color: #000!important;
}

/* Lien "Voir la notice" (getFull = lien titre) */
li.result .resultItemLine1 h2 a.getFull {
  text-decoration: none;
}

/* ================================================================
   PAGE DE DÉTAIL (Record)
   ================================================================ */

/* Espacement sous la toolbar */
.record-nav { margin-bottom: 20px; }

/* Espacement entre le bloc core et les onglets */
.record-tabs { margin-top: 40px; }

/* Contenu de chaque onglet */
.tab-content {
  background: #fff;
  border: 1px solid var(--line);
  border-top: none;
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  padding: 20px;
}

/* Onglets nav */
.record-tabs .nav-tabs {
  border-bottom: 2px solid var(--jc-green);
  gap: 4px;
}
.record-tabs .nav-tabs .nav-link {
  border-radius: var(--radius-sm) var(--radius-sm) 0 0;
  color: var(--muted);
  font-weight: 600;
  border: 1px solid transparent;
  padding: 8px 18px;
}
.record-tabs .nav-tabs .nav-link.active {
  color: var(--jc-green);
  background: #fff;
  border-color: var(--line) var(--line) #fff;
}

.record .media-left, .record .media-right, .result .media-left, .result .media-right {
    flex: none;
    max-width: 100%;
    text-align: center;
}

.result .title {
    font-size: 1.84rem!important;
}

.pub{
    margin-top: -6px;
    color : var(--muted) !important;
}


/* ================================================================
   PANNEAU FACETTES (sidebar)
   ================================================================ */
.sidebar {
  position: sticky !important;
  top: 16px;
  border-radius: var(--radius-lg);
  background: transparent;
}
.sidebar > *,
.sidebar .facet-list-section {
  background: #fff;
  box-shadow: var(--shadow);
  padding: 18px;
  margin-bottom: 16px;
  border-radius: var(--radius-md);
}

/* Sidebar droite (page notice) — une seule carte unifiée */
.sidebar.right {
  background: #fff;
  box-shadow: var(--shadow);
  border-radius: var(--radius-lg);
  padding: 18px;
}
.sidebar.right > * {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-bottom: 4px !important;
  border-radius: 0 !important;
}
.sidebar.right > *:last-child {
  margin-bottom: 0 !important;
}
.sidebar.right a,
.sidebar.right a:hover {
  text-decoration: none;
}
.sidebar.right ul li {
  padding-top: 2px !important;
  padding-bottom: 2px !important;
  margin-bottom: 0 !important;
}
.sidebar h2 {
  font-family: 'Cicero', Georgia, serif;
  font-size: 1.5rem !important;
  line-height: 1 !important;
  margin: 0 0 16px !important;
  color: var(--ink);
}
.sidebar .facet-group {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: none !important;
}
.sidebar .facet-group + .facet-group {
  padding-top: 18px !important;
  border-top: 1px solid var(--line) !important;
}
.sidebar .facet-title button,
.sidebar h3.facet-title button {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
  background: none;
  border: none;
  padding: 0 0 12px;
  width: 100%;
  text-align: left;
}
/* Items de facette */
.sidebar .facet-value,
.sidebar a.facet-value {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  color: var(--ink) !important;
  text-decoration: none;
  font-size: .95rem;
}
.sidebar .facet-value:hover { background: #f4fafa; text-decoration: none; }
.sidebar .facet-value .badge,
.sidebar .facet-value .facet-count,
.sidebar .badge {
  min-width: 44px;
  height: 26px;
  border-radius: 999px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: .78rem !important;
  font-weight: 700 !important;
  background: rgba(0,110,115,.10) !important;
  color: var(--jc-green) !important;
  padding: 0 8px;
}

/* Filtre actif */
.sidebar .active.facet-value,
.sidebar .facet-value.active {
  background: rgba(0,110,115,.08);
  font-weight: 600;
}

.facet, .facet-group .title, .facet-load-indicator, .facet-load-failed, .sidebar .datevis-form {
    padding: .10rem calc(.5rem - 2px);
}

/* ================================================================
   CONTRÔLES DE RÉSULTATS (tri, limite, vue)
   ================================================================ */
.search-controls {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}
.search-controls select,
.search-controls .limit-control select,
.search-controls .sort-control select {
  height: 44px !important;
  border-radius: 12px !important;
  border: 1px solid var(--line) !important;
  padding: 0 12px !important;
  background: #fff !important;
  font-size: .93rem;
}

/* ================================================================
   PAGINATION
   ================================================================ */
.pagination {
  justify-content: center;
  margin: 1.5rem 0;
  gap: 4px;
  flex-wrap: wrap;
}
.page-item .page-link {
  border: none !important;
  border-radius: 10px !important;
  color: var(--ink) !important;
  background: transparent !important;
  font-weight: 600;
  text-align: center;
  padding: 8px 12px !important;
  transition: background .15s;
}
.page-item .page-link:hover { background: rgba(0,110,115,.08) !important; }
.page-item.active .page-link {
  background: rgba(0,110,115,.12) !important;
  color: var(--jc-green) !important;
  font-weight: 700;
}
.page-item.disabled .page-link { opacity: .4; }

/* ================================================================
   BOUTONS GÉNÉRAUX
   ================================================================ */
.btn-primary {
  background: var(--jc-green-2) !important;
  border-color: var(--jc-green-2) !important;
  color: #fff !important;
  border-radius: 12px !important;
}
.btn-primary:hover { background: #054c2a !important; border-color: #054c2a !important; }

.btn-outline-primary {
  color: var(--jc-green) !important;
  border-color: var(--jc-green) !important;
  border-radius: 12px !important;
}
.btn-outline-primary:hover {
  background: var(--jc-green) !important;
  color: #fff !important;
}

/* ================================================================
   SECTION "LIENS UTILES" (pied de contenu)
   ================================================================ */
.footer-links {
  margin-top: 44px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 32px;
}
.footer-group h3 {
  margin: 0 0 12px;
  font-family: 'Cicero', Georgia, serif;
  font-size: 1.4rem;
  color: var(--ink);
}
.footer-group a {
  display: block;
  margin: 8px 0;
  color: var(--jc-green);
  font-size: .93rem;
}



/* ================================================================
   RESPONSIVE
   ================================================================ */
#searchForm_lookfor{
    width : 100%;
    max-width : 100%;
}


@media (max-width: 1120px) {
  .sidebar { position: static !important; }
}

@media (max-width: 860px) {
  header.hidden-print::after { width: 240px; height: 240px; right: -44px; top: -10px; }
  .searchForm-inputs {
    grid-template-columns: 1fr !important;
  }
  .searchForm_type  { grid-column: 1 !important; }
  .searchForm-inputs > button[type="submit"] { grid-column: 1 !important; }
  li.result .media { grid-template-columns: 100px minmax(0,1fr) !important; }
  li.result [class*="media-left"] { width: 100px !important; height: 148px !important; }
  .footer-links { grid-template-columns: 1fr; gap: 20px; }
}

@media (max-width: 560px) {
  .navbar-brand { font-size: 1.3rem !important; }
  li.result .media { grid-template-columns: 1fr !important; }
  li.result [class*="media-left"] { width: 100% !important; height: 220px !important; }
}

/* ================================================================
   SEARCH STATS — alignement gauche
   ================================================================ */
.search-header {
  justify-content: flex-start !important;
  align-items: center;
  gap: 16px;
}
.search-stats {
  text-align: left !important;
  flex: 1;
}
.search-stats .pager,
.search-stats .pagination-simple {
  text-align: left !important;
  justify-content: flex-start !important;
}
.search-stats .page-link {
  background: rgba(0,110,115,.10) !important;
  color: var(--jc-green) !important;
  border: 1px solid rgba(0,110,115,.20) !important;
  border-radius: 50px !important;
  font-size: .78rem !important;
  padding: 3px 10px !important;
  line-height: 1.4 !important;
}
.search-stats .page-link:hover {
  background: rgba(0,110,115,.22) !important;
  border-color: rgba(0,110,115,.35) !important;
}

/* Bouton "›" page suivante dans search-stats */
a.page-suivante {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(0, 110, 115, .12);
  color: var(--jc-green) !important;
  font-size: 1rem;
  font-weight: 900;
  text-decoration: none;
  margin-left: 6px;
  vertical-align: middle;
  transition: background .15s;
}
a.page-suivante:hover {
  background: rgba(0, 110, 115, .22);
  text-decoration: none;
}

/* ================================================================
   COVER — placeholder sans image
   ================================================================ */
.cover-no-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  text-align: center;
  font-size: .75rem;
  font-style: italic;
  color: var(--muted);
  line-height: 1.4;
  white-space: normal;
  word-break: break-word;
  text-decoration: none !important;
  background: var(--surface-soft);
}

/* ================================================================
   BADGES HOLDINGS (page notice)
   ================================================================ */
.holding-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}
.holding-badge--available {
  background: rgba(88,181,51,.15);
  color: #2e6b14;
  border: 1px solid rgba(88,181,51,.4);
}
.holding-badge--unavailable {
  background: rgba(194,0,0,.10);
  color: #a00;
  border: 1px solid rgba(194,0,0,.25);
}
.holding-badge--location {
  background: rgba(0,110,115,.10);
  color: var(--jc-green);
  border: 1px solid rgba(0,110,115,.20);
}

/* ================================================================
   COVER — lien wrapper dans media-left
   ================================================================ */
li.result [class*="media-left"] a.record-cover-link,
li.result [class*="media-left"] > div[aria-hidden] {
  display: flex;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  overflow: hidden;
  text-decoration: none;
}
li.result [class*="media-left"] .cover-no-image {
  min-height: 80px;
  border-radius: inherit;
}

/* ================================================================
   COVER — page notice
   ================================================================ */
.record-cover-col {
  width: 160px;
  min-width: 160px;
}
.record-cover-col a.record-cover-link,
.record-cover-col > div[aria-hidden] {
  display: flex;
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
}
.record-cover-col .cover-no-image {
  width: 160px;
  min-height: 220px;
  border: 1px solid rgba(0,0,0,.15);
  border-radius: 8px;
}
.record-cover-col img.recordcover {
  width: 160px;
  border-radius: 8px;
  display: block;
}


.highlight, mark, .mark {
    background-color: #ffe300;
}

.record .media-left, .result .media-left {
    margin-right: 30px;
}

.sidebar .facet-group .facet.active, .sidebar .facet-group .facet.active:hover, .sidebar .active-filters .facet, .sidebar .active-filters .facet:hover {
    border-color: #FF8C00;
    background-color: #FF8C00;
    color: #fff;
}

.flash-message:empty {
    display: none;
}