/* =====================================================================================
   RESPONSIVE — corrections communes court-circuit.live et court-circuit.band
   Chargé APRÈS style.css sur les deux sites. Beaucoup de blocs ont des styles en ligne
   (padding: 30px 0 30px 40px…) générés par le PHP : d'où les !important ciblés.
   ===================================================================================== */

/* ---------- Listes d'événements : le cœur (favori) ne recouvre plus le titre ---------- */
.evenements:has(> [class^="DivHeart"]) .evenements-infos {
	padding-right: 52px !important;
}

/* ---------- Cartes « artiste » (listes CCB, palmarès) : hauteur libre, badges sous le texte ---------- */
.artistes-liste-item {
	display: flex;
	height: auto;
	min-height: 84px;
	overflow: hidden;
}
.artistes-liste-item > a:first-child {
	display: block;
	flex: 0 0 84px;
	width: 84px !important;
	height: auto !important;
}
.artistes-liste-item--img {
	display: block;
	height: 100%;
	min-height: 84px;
}
.artistes-liste-item--infos {
	flex: 1 1 auto;
	width: auto;
	height: auto;
	min-width: 0;
}
.artistes-liste-item--infos > div[style*="bottom: 8px"][style*="right: 8px"] {
	position: static !important;
	margin-top: 6px;
	text-align: right;
}
.artistes-liste-item--infos_genre {
	line-height: 12px;
}
.artistes-liste-item--infos_genre[style*="font-size: 8px"] {
	font-size: 10px !important;
}

/* ---------- Textes trop petits (lieux, villes) ---------- */
.evenements-infos-lieu {
	font-size: 11px;
}

/* ---------- Comptes connectés : liste « Sélectionnez une autre de vos organisations » (SU, multi-orgas) ---------- */
.CssSwitcher {
	height: auto !important;
	padding: 8px 16px;
}
.CssSwitcher2 {
	gap: 6px 10px;
	flex-wrap: wrap;
	font-size: 13px;
}
#SwitchSelect {
	box-sizing: border-box;
	max-width: 100%;
	min-width: 220px;
	height: 38px;
	padding: 0 34px 0 12px;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center / 16px;
	color: #111;
	font-size: 15px;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
}

/* ---------- Gestionnaire d'événements : actions lisibles et faciles à toucher ---------- */
.GestionnaireMenuEvent {
	font-size: 11px;
	line-height: 16px;
	margin-bottom: 0;
}
.GestionnaireMenuEvent {
	display: block;
	padding: 5px 0;
}
.GestionnaireMenuEvent a { display: block; }

/* ============================== TÉLÉPHONE ============================== */
@media (max-width: 767px) {

	/* Blocs blancs : 40 px de marge intérieure (+ 40 px à droite sur chaque enfant) mangeaient un tiers de l'écran */
	.home-main--section,
	.home-main--section[style] {
		padding: 24px 20px !important;
	}
	/* (sauf les blocs dont le PHP force déjà padding: 0 en ligne : l'espacement y est porté par l'enfant) */
	.home-main--section:not([style*="padding-right: 0"]) > div[style*="padding-right: 40px"],
	.home-main--section:not([style*="padding-right: 0"]) [class^="evenement-a-propos--"][style*="padding-right: 40px"] {
		padding-right: 0 !important;
	}
	.home-main--section .evenement-a-propos--map {
		width: calc(100% + 40px);
		margin-left: -20px;
	}

	/* Icônes (i, #, horloge, lieu, e-mail) : une colonne de 30 px au lieu de 50 px */
	.evenement-a-propos--description,
	.evenement-a-propos--tags,
	.evenement-a-propos--heure,
	.evenement-a-propos--adresse,
	.evenement-a-propos--email {
		padding-left: 32px;
	}
	.evenement-a-propos > div:after {
		width: 20px;
		height: 20px;
	}
	.evenement-a-propos--description,
	.evenement-a-propos--description * {
		font-size: 15px;
		line-height: 1.45;
	}

	/* Menu du bas : libellés lisibles */
	#menu-principal .header-menu--item {
		font-size: 10px;
	}

	/* Villes sous le nom du lieu (pages événement, artiste, organisateur) */
	section.evenement-infos .evenement-localisation .evenement-ville {
		font-size: 11px !important;
		line-height: 13px !important;
	}

	/* Bandeaux rouges/jaunes fixés en bas (cookies, « Vous êtes artiste… ») : compacts */
	section.evenement-billeterie[id^="DspBandeau"]:not(#DspBandeau) .container {
		padding: 10px 14px !important;
	}
	section.evenement-billeterie .evenement-btn-plus {
		font-size: 13px;
		line-height: 1.35;
		text-align: left !important;
	}
	section.evenement-billeterie .DspCroixBlanche {
		width: 26px;
		height: 26px;
		line-height: 24px;
		margin: 0 0 4px 10px;
	}

	/* Barre « Trouver des billets » (page événement) : le bouton de réservation suffit, l'intitulé est masqué */
	#DspBandeau .container {
		padding: 10px 14px !important;
	}
	#DspBandeau .evenement-billeterie-plus:has(+ .evenement-billeterie-choix) {
		display: none;
	}
	#DspBandeau .evenement-billeterie-choix {
		margin: 0 !important;
	}

	/* Champs de formulaire : 16 px minimum, sinon l'iPhone zoome à chaque saisie */
	input[type="text"], input[type="email"], input[type="password"], input[type="search"],
	input[type="tel"], input[type="url"], input[type="number"], input:not([type]),
	select, textarea {
		font-size: 16px !important;
	}

	/* Formulaires « Créer un événement » / « Créer un·e artiste » (panneaux plein écran) :
	   champs sur toute la largeur, marges réduites, et le bas du panneau n'est plus caché par le menu (90 px) */
	#creer-un-evenement,
	#aside-ajouter-un-artiste {
		padding-left: 18px;
		padding-right: 18px;
		bottom: 90px !important;
		height: auto !important;
	}
	#creer-un-evenement form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
	#creer-un-evenement form textarea,
	#aside-ajouter-un-artiste form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
	#aside-ajouter-un-artiste form textarea {
		width: 100%;
		box-sizing: border-box;
		padding: 10px 12px;
	}

	/* … sauf les petits champs de prix (cadre « € » de 94 px) */
	#creer-un-evenement form .prix-ticket .currencyinput input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
	#aside-ajouter-un-artiste form .prix-ticket .currencyinput input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]) {
		width: 75%;
		padding: 8px 4px 8px 10px;
	}

	/* CCB, espace artiste : la barre « Mes paramètres / Votre page artiste » fixée en haut avait un fond en dégradé
	   transparent, le contenu défilait dessous et se mélangeait aux boutons */
	#votre-page-artiste #vpa-fixedhero {
		z-index: 20;
		background: rgba(21, 21, 21, .97);
		box-shadow: 0 4px 14px rgba(0, 0, 0, .35);
	}
	#votre-page-artiste #vpa-fixedhero .row.align-items-center {
		min-height: 0;
		padding: 0 0 10px;
	}

	/* Liste des organisations : pleine largeur */
	#SwitchSelect {
		width: 100%;
		font-size: 16px;
	}

	/* Gestionnaire : boutons d'action de 32 px de haut */
	.GestionnaireMenuEvent {
		font-size: 12px;
	}
	.GestionnaireMenuEvent {
		padding: 8px 0;
	}

	/* Pied de page : mentions légales lisibles */
	#site-footer--copyright,
	#site-footer--copyright a {
		font-size: 11px;
		line-height: 1.4;
	}

	/* Petits libellés de formulaire (« Se souvenir de moi », « Mot de passe oublié ? ») */
	#login-form label,
	#login-form .login-forget-pwd a {
		font-size: 13px;
	}
}

/* Très petits écrans : le menu du bas garde 6 entrées sur 320 px */
@media (max-width: 360px) {
	#menu-principal .header-menu--item {
		font-size: 9px;
	}
}
