/**
 * Euronex_v2 — compléments de compatibilité Joomla 6
 * Auteur : Serge Billon <serge@web54.fr> — https://www.web54.fr
 * Copyright : Serge Billon — web54.fr (C) 2026. Tous droits réservés.
 * Licence : GNU/GPL
 *
 * Les vues natives de Joomla 6 utilisent des classes Bootstrap 5 ;
 * le template embarque Bootstrap 2.3. Ce fichier comble l'écart.
 */

/* Utilitaires Bootstrap 5 utilisés par le cœur */
.visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {
	position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important;
	overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important;
}
.float-start { float: left; }
.float-end { float: right; }
.float-none, .pull-none { float: none; }
.d-none { display: none !important; }
.text-center { text-align: center; }
.w-100 { width: 100%; }
.list-inline, .list-unstyled { list-style: none; margin-left: 0; padding-left: 0; }
.list-inline-item { display: inline-block; margin-right: 5px; }

/* Images d'articles */
.item-image.pull-left, .item-image.float-start { margin: 0 15px 10px 0; }
.item-image.pull-right, .item-image.float-end { margin: 0 0 10px 15px; }
.item-image.pull-none { margin: 0 0 10px 0; }
.item-image img { display: block; }
figure.item-image { margin-bottom: 10px; }

/* Colonnes des vues blog / page d'accueil (Joomla 4+) */
.blog-items { margin-bottom: 20px; }
.blog-items .blog-item { margin-bottom: 20px; position: relative; }
.blog-items .blog-item:after { content: ""; display: table; clear: both; }
@media (min-width: 768px) {
	.blog-items[class*="columns-"], .blog-items[class*="masonry-"] { display: grid; grid-gap: 20px; gap: 20px; }
	.blog-items.columns-2, .blog-items.masonry-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.blog-items.columns-3, .blog-items.masonry-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.blog-items.columns-4, .blog-items.masonry-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.blog-items[class*="columns-"] .blog-item, .blog-items[class*="masonry-"] .blog-item { margin-bottom: 0; }
}

/* Pagination Joomla 4+ */
.pagination__wrapper { clear: both; text-align: center; }
ul.pagination { display: inline-flex; flex-wrap: wrap; list-style: none; margin: 10px 0 20px; padding: 0; }
ul.pagination .page-item { margin: 0; }
ul.pagination .page-link { display: block; padding: 4px 12px; line-height: 20px; border: 1px solid #ddd; margin-left: -1px; background: #fff; color: #5D87A1; text-decoration: none; }
ul.pagination .page-item:first-child .page-link { margin-left: 0; border-radius: 4px 0 0 4px; }
ul.pagination .page-item:last-child .page-link { border-radius: 0 4px 4px 0; }
ul.pagination .page-item.active .page-link { background: #5D87A1; border-color: #5D87A1; color: #fff; }
ul.pagination .page-item.disabled .page-link { color: #999; cursor: default; }
ul.pagination a.page-link:hover { background: #eee; }
.counter { color: #777; }

/* Icônes du cœur Joomla absentes de Font Awesome 3 */
.icon-angle-double-left:before { content: "\f100"; }
.icon-angle-double-right:before { content: "\f101"; }
.icon-arrow-left:before, .icon-previous:before { content: "\f104"; }
.icon-arrow-right:before, .icon-next:before { content: "\f105"; }
.icon-eye-slash:before { content: "\f070"; }
.icon-times:before { content: "\f00d"; }
.icon-angle-double-left, .icon-angle-double-right, .icon-previous, .icon-next, .icon-eye-slash, .icon-times {
	font-family: FontAwesome; font-style: normal; font-weight: normal; display: inline-block; text-decoration: inherit;
}

/* Icône d'édition des articles (frontend) */
.button-icons { position: absolute; top: 0; right: 0; }
.button-icons .icons a { display: inline-block; padding: 2px 6px; }

/* Étiquettes (tags) */
ul.tags { margin: 10px 0; }
ul.tags .list-inline-item a { display: inline-block; padding: 2px 8px; border-radius: 3px; background: #5D87A1; color: #fff; font-size: 12px; }

/* Champs personnalisés */
.fields-container { list-style: none; margin: 10px 0; padding: 0; }
.fields-container .field-entry { margin-bottom: 4px; }

/* Bouton menu mobile */
a#menu-icon, a#menu-icon:hover { text-decoration: none; }

/* Élément de menu « titre » (heading) aligné sur les liens */
#navigation .menu span.separator { display: block; position: relative; height: 45px; line-height: 45px; color: #fff; font-size: 15px; font-weight: normal; text-transform: uppercase; cursor: default; }
#navigation .menu ul span.separator { height: auto; line-height: 20px; padding: 8px 15px; font-size: 12px; text-transform: none; }
@media screen and (max-width: 799px) {
	#navigation .menu span.separator { height: auto; font-size: 16px; font-weight: 400; padding: 0 10px; }
	#navigation .menu ul span.separator { line-height: 35px; padding: 0 15px; }
}

/* Formulaires du cœur (mod_login, com_users, com_contact…) */
.form-group { margin-bottom: 10px; }
.input-group { display: flex; align-items: stretch; width: 100%; }
.input-group > .form-control { flex: 1 1 auto; width: 1%; min-width: 0; margin: 0; height: 30px; box-sizing: border-box; }
.input-group > .input-group-text, .input-group > .btn { display: flex; align-items: center; justify-content: center; padding: 0 10px; height: 30px; box-sizing: border-box; margin: 0; border: 1px solid #ccc; border-left: 0; background: #eee; color: #555; border-radius: 0 4px 4px 0; }
.input-group > .form-control:not(:last-child) { border-radius: 4px 0 0 4px; }
.input-group label.visually-hidden + .input-group-text { order: 2; }
.form-control { box-sizing: border-box; }
input.form-control, select.form-control, textarea.form-control { width: 100%; }
.form-check { display: flex; align-items: center; gap: 6px; }
.form-check-input { margin: 0; }
.icon-eye:before { content: "\f06e"; }
.icon-eye, .icon-fw { font-family: FontAwesome; font-style: normal; font-weight: normal; display: inline-block; text-decoration: inherit; }
.icon-fw { width: 1.3em; text-align: center; }

/* Info-bulles de l'édition en frontend (Joomla 4+) */
[role="tooltip"]:not(.show) { display: none; }
[role="tooltip"] { position: absolute; z-index: 1000; max-width: 260px; padding: 6px 10px; background: #333; color: #fff; font-size: 12px; line-height: 18px; border-radius: 4px; }
.jmoddiv { position: relative; }
.jmodedit { position: absolute; top: 0; right: 0; z-index: 100; }
.button-icons .icons .float-end > div { position: relative; }
#navigation .menu > a.jmodedit { position: absolute; top: 0; right: 0; width: auto; height: auto; line-height: 20px; padding: 2px 6px; z-index: 100; }

/* Module de connexion : rendu identique à la version Joomla 3 (libellés texte, sans icône) */
#login-form .add-on .icon-user, #login-form .add-on .icon-lock { visibility: hidden; }
