
/* IMPORTANT: ensure [hidden] actually hides elements (author CSS can override UA styles) */
#pcn-cookie-banner[hidden],
#pcn-cookie-modal[hidden]{
  display:none !important;
}
:root{
  --pcn-teal:#2B91BB;
  --pcn-orange:#FF8A00;
}

/* Bandeau */
.pcn-cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:9999;padding:12px}
.pcn-cookie-card{
  max-width:1100px;margin:0 auto;display:flex;gap:14px;align-items:flex-end;justify-content:space-between;
  background:rgba(11,27,34,.92);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);
  color:#fff;border-radius:16px;padding:14px
}
.pcn-cookie-text p{margin:.25rem 0 0;opacity:.9}
.pcn-cookie-actions{display:flex;gap:10px;flex-wrap:wrap}

.pcn-btn{
  border-radius:12px;padding:10px 14px;border:1px solid rgba(255,255,255,.18);
  background:transparent;color:#fff;cursor:pointer;font-weight:700
}
.pcn-btn-primary{background:var(--pcn-orange);border-color:var(--pcn-orange);color:#111}
.pcn-btn-ghost{background:rgba(255,255,255,.08)}

@media (max-width:720px){
  .pcn-cookie-card{flex-direction:column;align-items:stretch}
  .pcn-cookie-actions{justify-content:stretch}
  .pcn-cookie-actions .pcn-btn{width:100%}
}

/* Modal */
.pcn-cookie-modal{
  position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(0,0,0,.55)
}
.pcn-cookie-modal-card{
  width:min(720px,100%);background:rgba(11,27,34,.96);color:#fff;border-radius:18px;
  border:1px solid rgba(255,255,255,.12);overflow:hidden
}
.pcn-cookie-modal-header{
  display:flex;align-items:center;justify-content:space-between;padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,.10)
}
.pcn-cookie-modal-body{padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.pcn-cookie-row{
  display:flex;gap:12px;justify-content:space-between;align-items:flex-start;padding:12px;
  border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.06)
}
.pcn-cookie-row p{margin:.25rem 0 0;opacity:.9}
.pcn-cookie-modal-actions{
  display:flex;gap:10px;padding:14px 16px;border-top:1px solid rgba(255,255,255,.10);flex-wrap:wrap
}
.pcn-cookie-modal-footer{
  display:flex;gap:12px;justify-content:space-between;align-items:center;padding:10px 16px;opacity:.9
}
.pcn-cookie-link{color:#fff;text-decoration:underline}
.pcn-cookie-link-btn{color:#fff;text-decoration:underline;background:none;border:none;cursor:pointer;padding:0}
.pcn-x{background:none;border:none;color:#fff;font-size:18px;cursor:pointer}

/* Switch */
.pcn-switch{position:relative;display:inline-block;width:46px;height:26px}
.pcn-switch input{opacity:0;width:0;height:0}
.pcn-switch span{
  position:absolute;cursor:pointer;inset:0;background:rgba(255,255,255,.20);
  border-radius:999px;border:1px solid rgba(255,255,255,.18);transition:.2s
}
.pcn-switch span:before{
  content:"";position:absolute;height:20px;width:20px;left:3px;top:2px;background:white;border-radius:50%;transition:.2s
}
.pcn-switch input:checked + span{background:rgba(255,138,0,.85);border-color:rgba(255,138,0,.85)}
.pcn-switch input:checked + span:before{transform:translateX(20px)}
.pcn-switch-disabled{opacity:.6}


/* Lien bouton footer */
.cookie-link-btn{background:none;border:none;color:inherit;text-decoration:underline;cursor:pointer;padding:0;font:inherit}

/* Safety: ensure modal layer and its content can receive clicks */
#pcn-cookie-modal{ pointer-events:auto; }
#pcn-cookie-modal .pcn-cookie-modal-card{ pointer-events:auto; }


/* --- Banner: texte sur 2 lignes + 3 boutons alignés (desktop) --- */
.pcn-cookie-card{
  align-items:center;
}
.pcn-cookie-text{
  flex: 1 1 auto;
  min-width: 0;
}
.pcn-cookie-text p{
  /* Contrainte de largeur pour forcer un retour à la ligne */
  max-width: 72ch;
}
.pcn-cookie-actions{
  flex: 0 0 auto;
  display:flex;
  gap:10px;
  flex-wrap: nowrap;      /* 3 boutons alignés sur une ligne */
  align-items: stretch;
}
.pcn-cookie-actions .pcn-btn{
  white-space: nowrap;
}

/* Mobile: on garde le stack */
@media (max-width:720px){
  .pcn-cookie-actions{ flex-wrap: wrap; }
  .pcn-cookie-text p{ max-width: none; }
}


/* --- FIX alignement boutons (desktop) + texte plus étroit --- */
@media (min-width:721px){
  .pcn-cookie-card{
    display:grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items:center !important;
    gap:14px !important;
  }
  .pcn-cookie-text{ min-width:0; }
  .pcn-cookie-text p{
    max-width: 56ch; /* plus étroit => laisse la place aux boutons */
  }
  .pcn-cookie-actions{
    display:flex !important;
    flex-wrap: nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
  }
  .pcn-cookie-actions .pcn-btn{
    white-space: nowrap;
    height: 40px; /* même hauteur visuelle */
  }
}
