/* Bannière de consentement RGPD — habillage partagé par toutes les pages.
   Le balisage et la logique sont dans consentement.js ; les couleurs viennent
   des variables de la page hôte (index.html en pose un jeu, legal.css un autre),
   d'où le repli sur --shadow, que les pages légales ne définissent pas. */

.cookies{
  position:fixed;
  left:0; right:0; bottom:0;
  z-index:200;                     /* au-dessus de la barre de nav (z-index:60) */
  display:flex;
  justify-content:center;
  padding:16px;
  background:linear-gradient(to top, rgba(10,17,32,0.30), rgba(10,17,32,0));
  animation:cookies-monte .45s cubic-bezier(.2,.7,.3,1) both;
}
.cookies[hidden]{display:none;}
@keyframes cookies-monte{
  from{opacity:0; transform:translateY(18px);}
  to{opacity:1; transform:none;}
}
@media (prefers-reduced-motion: reduce){
  .cookies{animation:none;}
}
.cookies-carte{
  width:100%;
  max-width:780px;
  background:var(--paper-card);
  border:1px solid var(--line-strong);
  border-radius:14px;
  box-shadow:var(--shadow, 0 18px 40px -22px rgba(10,17,32,0.35));
  padding:20px 22px 18px;
}
.cookies-carte h2{
  font-family:var(--body);
  font-size:15px;
  font-weight:700;
  margin:0 0 6px;
  color:var(--ink);
}
.cookies-carte p{
  margin:0;
  font-size:13.5px;
  line-height:1.55;
  color:var(--ink-soft);
}
.cookies-carte a{color:var(--ink); text-underline-offset:2px;}
.cookies-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}
/* Refuser et Accepter ont strictement le même poids visuel : la CNIL exige
   que refuser soit aussi simple qu'accepter. Ne pas « dorer » l'un des deux. */
.cookies-actions button{
  flex:1 1 180px;
  font-family:var(--body);
  font-size:13.5px;
  font-weight:700;
  padding:11px 18px;
  border-radius:999px;
  border:1px solid var(--line-strong);
  background:var(--paper-card-2);
  color:var(--ink);
  cursor:pointer;
  transition:border-color .2s ease, background .2s ease;
}
.cookies-actions button:hover{
  border-color:var(--gold);
  background:var(--paper-card);
}
.cookies-actions button:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:2px;
}
.cookies-detail{
  margin-top:14px;
  font-size:12.5px;
  color:var(--ink-faint);
}
.cookies-detail summary{
  cursor:pointer;
  font-weight:600;
  color:var(--ink-soft);
}
.cookies-detail summary:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}
.cookies-detail ul{margin:8px 0 0; padding-left:18px;}
.cookies-detail li{margin-bottom:5px; line-height:1.5;}
.cookies-detail li b{color:var(--ink-soft);}

/* Lien de réouverture, dans le pied de page */
.cookies-reglages{
  background:none;
  border:none;
  padding:0;
  font:inherit;
  color:inherit;
  text-decoration:underline;
  text-underline-offset:2px;
  cursor:pointer;
}

@media (max-width:520px){
  .cookies{padding:10px;}
  .cookies-carte{padding:17px 17px 15px;}
  .cookies-actions button{flex:1 1 100%;}
}
