/* Coeur de SPIP */
.spip_documents > a { display: block; } /* Cf https://git.spip.net/spip-contrib-extensions/adaptive_images/issues/1 */
.box_mediabox button, .crayon-boutons button {min-width:auto; line-height:inherit;}
.adapt-img-wrapper {vertical-align: top;} /* cf https://github.com/nursit/AdaptiveImages/issues/13 */
.formulaire_spip textarea.markItUpEditor, .formulaire_spip li.editer_texte textarea {background-color: #eee !important; color: #111 !important;}
ul.spip { list-style-type: disc; }
.image.featured img.spip_logo {float: none; margin: 0;}
.spip_documents a.mediabox, .spip_document_file a { border: 0;}

/* Plugin Cookie Bar
   Bandeau repensé façon bannière de consentement claire : kicker en couleur,
   texte à gauche, CTA plein bien visible à droite (cf. documentation/
   inspirations graphiques/cookie-bar-good-sample.png).
   Sélecteurs préfixés par "body" : spip-correctifs.css est chargé AVANT
   #INSERT_HEAD_CSS (donc avant css/jquery.cookiebar.css) dans inclure/head.html —
   le préfixe monte la spécificité pour gagner sur le CSS du plugin quel que
   soit l'ordre de chargement, sans devoir réordonner le head. */
body #cookie-bar {
	background: var(--paper);
	color: var(--gris-deep);
	border-top: 1px solid var(--line);
	box-shadow: 0 -8px 24px rgba(32,39,47,.12);
	padding: 1.3em 1.5em;
	text-align: left;
}

/* Largeur alignée sur la charte graphique du site (.container, css/grid.css) :
   1440px / 1200px / 960px / 95% / 100% selon les mêmes points de rupture,
   plutôt qu'une largeur arbitraire propre à la barre. */
body #cookie-bar p {
	width: 1440px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	display: grid;
	grid-template-columns: auto minmax(240px, 1fr) 7.5em 7.5em;
	grid-template-areas:
		"logo titre policy  policy"
		"logo texte disable enable";
	align-items: center;
	column-gap: 1.8em;
	row-gap: .5em;
}
@media screen and (max-width: 1680px) { body #cookie-bar p { width: 1200px; } }
@media screen and (max-width: 1280px) { body #cookie-bar p { width: 960px; } }
@media screen and (max-width: 980px)  { body #cookie-bar p { width: 95%; } }
@media screen and (max-width: 736px)  { body #cookie-bar p { width: 100%; } }

/* Logo LT Travel : bloc à gauche, séparé du texte par un filet vertical
   (image injectée en CSS car le plugin cookiebar génère le balisage sans
   emplacement dédié — voir documentation/inspirations graphiques/logo-lt-travel-v1.png).
   En background-size:contain plutôt que content:url() : ce dernier ignore
   width/height sur ::before dans certains moteurs et affiche l'image à sa
   taille intrinsèque (876×292), ce qui casserait la mise en page. */
body #cookie-bar p::before {
	content: "";
	grid-area: logo;
	display: block;
	width: 7.125em;
	height: 2.375em;
	padding-right: 1.6em;
	border-right: 1px solid var(--line);
	background: url("../images/logo-lt-travel.png") no-repeat left center;
	background-size: contain;
}

/* Bloc 2, sous-bloc gauche : titre (généré en CSS, cf. p::before pour le logo) */
body #cookie-bar p::after {
	content: "Confidentialité & cookies";
	grid-area: titre;
	display: block;
	font-family: var(--font-titres);
	font-weight: 700;
	font-size: 1em;
	color: var(--brique);
}

/* Bloc 3, sous-bloc gauche : texte */
body #cookie-bar .cb-msg {
	grid-area: texte;
	display: block;
	font-family: Arial, Helvetica, Verdana, sans-serif;
	font-weight: 400;
	font-size: .85em;
	letter-spacing: 0;
	line-height: 1.45;
	color: var(--gris-deep);
}

body #cookie-bar a {
	display: inline-block;
	margin: 0;
	border-radius: var(--radius-md);
	font-family: var(--font-titres);
	text-decoration: none;
	white-space: nowrap;
	transition: background .2s ease, color .2s ease, border-color .2s ease;
}

/* Bloc 2, sous-bloc droit : simple lien texte — pas d'effet bouton (zone
   cliquable limitée au texte) ni surlignage. */
body #cookie-bar .cb-policy {
	grid-area: policy;
	align-self: center;
	justify-self: center;
	display: inline-block;
	padding: 0;
	background: none;
	color: var(--bleu);
	font-size: .8em;
	text-decoration: none;
}
body #cookie-bar .cb-policy:hover { background: none; }

/* Bloc 3, sous-bloc droit : les 2 boutons Oui/Non, largeur identique et
   compacte (juste ce qu'il faut pour le texte, pas un CTA pleine largeur),
   centrés verticalement dans la hauteur du bloc (dictée par le texte à
   gauche, sur la même ligne de grille — pas de bloc dédié à enjamber). */
body #cookie-bar .cb-disable,
body #cookie-bar .cb-enable {
	align-self: center;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	font-size: .75em;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .85em .5em;
}

body #cookie-bar .cb-disable {
	grid-area: disable;
	background: transparent;
	border: 1px solid var(--brique);
	color: var(--brique);
}
body #cookie-bar .cb-disable:hover { border-color: var(--brique_hover); color: var(--brique_hover); background: var(--gris-bg); }

body #cookie-bar .cb-enable {
	grid-area: enable;
	background: var(--brique);
	border: 1px solid var(--brique);
	color: #fff;
}
body #cookie-bar .cb-enable:hover { background: var(--brique_hover); border-color: var(--brique_hover); }

@media (max-width: 980px) {
	body #cookie-bar { padding: 1.1em 1.2em; }
	body #cookie-bar p {
		grid-template-columns: 1fr 1fr;
		grid-template-areas:
			"logo    logo"
			"titre   titre"
			"policy  policy"
			"texte   texte"
			"disable enable";
		row-gap: .8em;
	}
	body #cookie-bar p::before { padding-right: 0; border-right: 0; justify-self: center; }
}