/* Skin du bandeau vanilla-cookieconsent (pattern repris d'Argonaute).
   « J'accepte » en bouton primaire pleine largeur ; « Personnaliser » et
   « Cookies essentiels uniquement » en liens discrets au-dessus. Refus à 1 clic
   au premier niveau. L'ordre de tabulation est réparé côté DOM par
   js/cookie-consent.js (la grille place par data-role, rendu identique).
   Couleurs : variables globales GeneratePress, avec valeurs de repli. */
#cc-main {
  /* Rose des titres du site (#da0166, 5:1 sur blanc, AA) : le rose --accent
     (#f81d7f) plafonne à 3,8:1 avec du texte blanc, AA KO. */
  --cql-cc-primary: #da0166;
  --cql-cc-primary-hover: #b90157; /* valeur fixe : color-mix() absent des vieux Safari */
  --cc-font-family: inherit;
  --cc-bg: var(--base-3, #fff);
  --cc-primary-color: var(--contrast, #222);
  --cc-btn-primary-bg: var(--cql-cc-primary);
  --cc-btn-primary-border-color: var(--cql-cc-primary);
  --cc-btn-primary-hover-bg: var(--cql-cc-primary-hover);
  --cc-btn-primary-hover-border-color: var(--cql-cc-primary-hover);
  --cc-link-color: var(--cql-cc-primary);
  --cc-modal-border-radius: 12px;
}

/* Largeur ~560 px. Double classe pour battre le CSS de la lib. */
#cc-main .cm.cm--box {
  max-width: min(560px, calc(100vw - 32px));
}

/* Rangée de liens puis bouton pleine largeur. */
#cc-main .cm--box .cm__btns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 12px;
  align-items: center;
}
/* !important requis : la media query mobile de la lib repasse les groupes en flex. */
#cc-main .cm.cm--box .cm__btn-group {
  display: contents !important;
}
/* La marge `.cm__btn + .cm__btn` de la lib décale la grille : le gap suffit.
   !important : entre 561 et 640 px, la lib la repose en !important. */
#cc-main .cm--box .cm__btns .cm__btn {
  margin: 0 !important;
}
#cc-main .cm--box .cm__btn[data-role='show'] {
  grid-row: 1;
  grid-column: 1;
}
#cc-main .cm--box .cm__btn[data-role='necessary'] {
  grid-row: 1;
  grid-column: 2;
}
#cc-main .cm--box .cm__btn[data-role='all'] {
  grid-row: 2;
  grid-column: 1 / -1;
  min-height: 48px;
  font-weight: 800;
}

/* Liens discrets. */
#cc-main .cm--box .cm__btn[data-role='show'],
#cc-main .cm--box .cm__btn[data-role='necessary'] {
  background: none;
  border: none;
  padding: 8px 4px;
  margin: 0 !important;
  min-height: 48px;
  color: var(--cql-cc-primary);
  font-weight: 700;
}
#cc-main .cm--box .cm__btn[data-role='show']:hover,
#cc-main .cm--box .cm__btn[data-role='necessary']:hover {
  background: none;
  text-decoration: underline;
  color: var(--cql-cc-primary-hover);
}

/* Modale de préférences : refus et « Enregistrer » en liens, « J'accepte » à droite. */
#cc-main .pm.pm--box .pm__footer {
  display: grid;
  grid-template-columns: auto auto auto;
  justify-content: space-between;
  align-items: center;
  gap: 10px 12px;
}
#cc-main .pm.pm--box .pm__footer .pm__btn-group {
  display: contents !important;
}
#cc-main .pm.pm--box .pm__btn[data-role='necessary'] {
  grid-row: 1;
  grid-column: 1;
}
#cc-main .pm.pm--box .pm__btn[data-role='save'] {
  grid-row: 1;
  grid-column: 2;
}
#cc-main .pm.pm--box .pm__btn[data-role='all'] {
  grid-row: 1;
  grid-column: 3;
  min-height: 44px;
  padding-left: 22px;
  padding-right: 22px;
  font-weight: 800;
  margin: 0 !important;
}
#cc-main .pm.pm--box .pm__btn[data-role='necessary'],
#cc-main .pm.pm--box .pm__btn[data-role='save'] {
  background: none;
  border: none;
  padding: 8px 4px;
  margin: 0 !important;
  min-height: 44px;
  color: var(--cql-cc-primary);
  font-weight: 700;
}
#cc-main .pm.pm--box .pm__btn[data-role='necessary']:hover,
#cc-main .pm.pm--box .pm__btn[data-role='save']:hover {
  background: none;
  text-decoration: underline;
  color: var(--cql-cc-primary-hover);
}

/* Sous 560 px : les 3 actions s'empilent, J'accepte en dernier. */
@media (max-width: 560px) {
  #cc-main .cm--box .cm__btns {
    grid-template-columns: 1fr;
  }
  #cc-main .cm--box .cm__btn[data-role='show'] {
    grid-row: 1;
    grid-column: 1;
  }
  #cc-main .cm--box .cm__btn[data-role='necessary'] {
    grid-row: 2;
    grid-column: 1;
  }
  #cc-main .cm--box .cm__btn[data-role='all'] {
    grid-row: 3;
    grid-column: 1;
  }

  #cc-main .pm.pm--box .pm__footer {
    grid-template-columns: 1fr;
    justify-content: stretch;
  }
  #cc-main .pm.pm--box .pm__btn[data-role='necessary'] {
    grid-row: 1;
    grid-column: 1;
  }
  #cc-main .pm.pm--box .pm__btn[data-role='save'] {
    grid-row: 2;
    grid-column: 1;
  }
  #cc-main .pm.pm--box .pm__btn[data-role='all'] {
    grid-row: 3;
    grid-column: 1;
  }
}
