/* ============================================================
   ROARY — bandeau de consentement cookies + liens légaux du footer
   ============================================================
   Aujourd'hui, le site ne dépose aucun cookie de mesure d'audience
   ou de publicité : seule la session Supabase (connexion au compte)
   est utilisée, et elle est exemptée de consentement (strictement
   nécessaire au service demandé). Ce bandeau sert donc surtout à
   informer clairement — et à être prêt le jour où un outil de
   mesure d'audience est ajouté : il suffira de faire dépendre son
   chargement de `window.roaryCookies.surAccord(...)`. */

.rc-bar{
  position:fixed; left:24px; bottom:24px; z-index:400;
  max-width:360px; width:calc(100% - 48px);
  opacity:0; transform:translateY(18px) scale(.96);
  transition:opacity .45s cubic-bezier(.34,1.56,.64,1), transform .45s cubic-bezier(.34,1.56,.64,1);
  pointer-events:none;
}
.rc-bar.in{opacity:1; transform:translateY(0) scale(1); pointer-events:auto;}
.rc-card{
  background:var(--cuir); color:var(--white); border-radius:18px;
  padding:20px 22px; box-shadow:0 20px 50px rgba(0,0,0,.28);
  display:flex; flex-direction:column; gap:14px;
}
.rc-top{display:flex; align-items:center; gap:14px;}
.rc-cookie{flex:0 0 auto;}
.rc-texte{
  margin:0; font-family:'Manrope',sans-serif; font-weight:700; font-size:14px;
  line-height:1.4; color:var(--white);
}
.rc-fine{
  margin:0; font-size:12px; line-height:1.6; color:rgba(253,252,250,.65);
}
.rc-fine a{color:var(--bleu); border-bottom:1px solid rgba(176,203,231,.4);}
.rc-fine a:hover{color:var(--white); border-color:var(--white);}
.rc-actions{display:flex; gap:10px; margin-top:2px;}
.rc-btn{
  flex:1; font-family:'Jost',sans-serif; font-weight:300; font-size:11.5px;
  letter-spacing:.08em; text-transform:uppercase; padding:10px 0;
  border-radius:20px; cursor:pointer; white-space:nowrap; text-align:center;
  transition:background .3s ease, color .3s ease, border-color .3s ease, transform .25s cubic-bezier(.34,1.56,.64,1);
}
.rc-btn-ghost{background:none; border:1px solid rgba(253,252,250,.3); color:var(--white);}
.rc-btn-ghost:hover{border-color:var(--white);}
.rc-btn-fill{background:var(--camel); border:1px solid var(--camel); color:var(--cuir);}
.rc-btn-fill:hover{background:var(--white); border-color:var(--white); color:var(--cuir); transform:scale(1.04);}
@media(max-width:520px){
  .rc-bar{left:12px; bottom:12px; width:calc(100% - 24px);}
}

/* Mascotte : un cookie qui se fait croquer, en boucle — la seule touche
   ludique du bandeau, pour ne pas prendre le sujet trop au sérieux tout
   en restant sobre. */
.rc-cookieWrap{ animation:rcBoucle 3.2s ease-in-out infinite; transform-box:fill-box; transform-origin:50% 50%; }
@keyframes rcBoucle{ 0%,90%{opacity:1;} 95%{opacity:0;} 100%{opacity:1;} }

.rc-cookieBase{ animation:rcSquish 3.2s ease-in-out infinite; transform-box:fill-box; transform-origin:50% 50%; }
@keyframes rcSquish{
  0%,18%{ transform:scale(1); }
  21%{ transform:scale(1.06,.94); }
  26%,100%{ transform:scale(1); }
}

.rc-biteMain{ animation:rcBite 3.2s ease-in-out infinite; transform-box:fill-box; transform-origin:42px 16px; }
@keyframes rcBite{
  0%,12%{ transform:scale(0); }
  20%{ transform:scale(1.1); }
  26%,90%{ transform:scale(1); }
  94%,100%{ transform:scale(0); }
}
.rc-dent1{ animation:rcBite 3.2s ease-in-out infinite; animation-delay:.05s; transform-box:fill-box; transform-origin:32px 9px; }
.rc-dent2{ animation:rcBite 3.2s ease-in-out infinite; animation-delay:.05s; transform-box:fill-box; transform-origin:42px 28px; }
.rc-dent3{ animation:rcBite 3.2s ease-in-out infinite; animation-delay:.05s; transform-box:fill-box; transform-origin:26px 15px; }

.rc-miette{ animation:rcMiette 3.2s ease-in-out infinite; }
@keyframes rcMiette{
  0%,18%{ opacity:0; transform:translate(0,0); }
  24%{ opacity:1; transform:translate(2px,2px); }
  42%{ opacity:0; transform:translate(7px,15px); }
  100%{ opacity:0; }
}
@media(prefers-reduced-motion:reduce){
  .rc-cookieWrap, .rc-cookieBase, .rc-biteMain, .rc-dent1, .rc-dent2, .rc-dent3, .rc-miette{ animation:none !important; }
}

/* Rangée de liens légaux dans le footer, entre les réseaux sociaux et
   la mention fine — un bouton "Gérer les cookies" y rouvre le bandeau. */
footer .flegal{margin-top:20px; display:flex; flex-wrap:wrap; justify-content:center; gap:18px;}
footer .flegal a, footer .flegal button.flegal-cookies{
  font-family:'Jost',sans-serif; font-weight:300; font-size:11px;
  letter-spacing:.08em; text-transform:uppercase; color:rgba(244,245,240,.45);
  background:none; border:none; cursor:pointer; padding:0;
  border-bottom:1px solid transparent; transition:color .3s, border-color .3s;
}
footer .flegal a:hover, footer .flegal button.flegal-cookies:hover{color:var(--white); border-color:var(--bleu);}

@media(prefers-reduced-motion:reduce){
  .rc-bar{transition:none;}
}
