/* =====================================================================
   plancul-monaco.com — registre « PRUNE & MARBRE »   (gabarit annoncesastro,
   body.aa.skin-4.aa-compo-3.aa-fiche-3, --aa-accent: #6a1b9a posé en inline)

   Palette : accent PRUNE #6a1b9a (couleur du favicon) — prune profond #3d0f5c,
   prune nuit #2c0a40, lilas #c79ade ; neutre CHAUD = marbre ivoire #f7f2ea /
   surface #fffdf8 / champ #faf5ee ; encre #241528 ; muet #5e4a64.

   Composition propre au site :
   - en-tête VERTICAL à gauche (rail prune plein, 210 px) dès 1100 px, bandeau
     haut prune en dessous ; nav empilée, CTA en bas du rail ;
   - fond MARBRE veiné (dégradés très légers, veines prune) sur toute la page ;
   - annonces en lignes à BORD HAUT PRUNE (dégradé) et coin bas-droit vif ;
   - formes signature : arche (vignettes, photo de fiche, carte « poster »,
     haut du pied), médaillon (marque du logo, pastille de la porte d'âge),
     cartouche à coins coupés (catégorie), cœur SVG inline en filigrane ;
   - titres en serif, pied de page prune nuit, CTA en carte centrée.
   Les sélecteurs sont préfixés html:not(#_) : les règles .skin-4 … pèsent 0,2,0.
   ===================================================================== */

/* --- 1. jetons ------------------------------------------------------- */
html:not(#_) body.aa {
  --mc-prune: #6a1b9a;
  --mc-prune-f: #3d0f5c;
  --mc-nuit: #2c0a40;
  --mc-lilas: #c79ade;
  --mc-marbre: #f7f2ea;
  --mc-ivoire: #fffdf8;
  --mc-champ: #faf5ee;
  --mc-encre: #241528;

  --aa-fond: #f7f2ea;
  --aa-surface: #fffdf8;
  --aa-texte: #241528;
  --aa-muet: #5e4a64;
  --aa-bord: #e6dbd0;
  --aa-primaire: #6a1b9a;
  --aa-primaire-txt: #fffaf4;
  --aa-secondaire: #3d0f5c;
  --aa-secondaire-txt: #fffaf4;
  --aa-rayon: 16px;
  --aa-rayon-s: 999px;
  --aa-ombre: 0 2px 4px -2px rgba(61, 15, 92, .16), 0 18px 36px -26px rgba(61, 15, 92, .55);
  --aa-police: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --aa-police-titre: Georgia, "Iowan Old Style", "Times New Roman", serif;
  --aa-tete: linear-gradient(168deg, #4a1268 0%, #2c0a40 78%);
  --aa-tete-txt: #f5ebe1;
  --aa-pied: linear-gradient(172deg, #3d0f5c 0%, #2c0a40 74%);
  --aa-pied-txt: #f0e4d8;
  --aa-max: 1140px;
  font-size: 16px;
}

/* --- 2. fond marbre veiné ------------------------------------------- */
html:not(#_) body.aa {
  background-color: var(--mc-marbre);
  background-image:
    linear-gradient(104deg, transparent 46.8%, rgba(106, 27, 154, .055) 47.4%, rgba(106, 27, 154, .015) 48.1%, transparent 48.7%),
    linear-gradient(96deg, transparent 20.4%, rgba(61, 15, 92, .05) 21%, transparent 21.9%),
    linear-gradient(87deg, transparent 71.2%, rgba(106, 27, 154, .045) 71.8%, rgba(199, 154, 222, .05) 72.4%, transparent 73.3%),
    radial-gradient(130% 55% at 14% -8%, rgba(106, 27, 154, .09), transparent 62%),
    radial-gradient(90% 50% at 100% 10%, rgba(199, 154, 222, .09), transparent 58%),
    radial-gradient(80% 46% at 96% 92%, rgba(226, 198, 160, .18), transparent 62%);
  background-attachment: fixed;
  background-repeat: no-repeat;
}

/* --- 3. typographie -------------------------------------------------- */
html:not(#_) .aa-h1 {
  font-family: var(--aa-police-titre);
  font-weight: 700;
  letter-spacing: -.012em;
  color: var(--mc-encre);
}
html:not(#_) .aa-h2 {
  font-family: var(--aa-police-titre);
  font-weight: 700;
  color: var(--mc-encre);
  padding-left: .85rem;
  border-left: 3px solid var(--mc-prune);
  border-radius: 2px;
  font-size: 1.3rem;
}
html:not(#_) .aa-hero__txt .aa-h1::after {
  content: "";
  display: block;
  width: 92px;
  height: 3px;
  margin: .7rem 0 0;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--mc-prune), var(--mc-lilas));
}
html:not(#_) .aa-intro { color: #4d3c52; }
html:not(#_) .aa-compte, html:not(#_) .aa-hero__chiffres { color: var(--mc-prune-f); }

/* --- 4. boutons ------------------------------------------------------ */
html:not(#_) .aa-btn--primaire {
  background: linear-gradient(135deg, #7c2bad 0%, #4e1270 100%);
  color: #fffaf4;
  border-color: transparent;
  box-shadow: 0 10px 22px -12px rgba(74, 18, 104, .7);
  letter-spacing: .005em;
}
html:not(#_) .aa-btn--secondaire {
  background: var(--mc-ivoire);
  color: var(--mc-prune-f);
  border: 2px solid rgba(106, 27, 154, .42);
  box-shadow: 0 6px 14px -12px rgba(61, 15, 92, .6);
}
html:not(#_) .aa-btn--secondaire:hover {
  background: var(--mc-prune-f);
  color: #fffaf4;
  border-color: var(--mc-prune-f);
}

/* --- 5. en-tête : bandeau prune, puis RAIL VERTICAL dès 1100 px ------ */
html:not(#_) .aa-header {
  background: var(--aa-tete);
  color: var(--aa-tete-txt);
  border-bottom: 1px solid rgba(199, 154, 222, .3);
  box-shadow: 0 14px 30px -26px rgba(44, 10, 64, .9);
}
html:not(#_) .aa-logo { font-family: var(--aa-police-titre); font-weight: 700; letter-spacing: .01em; color: var(--aa-tete-txt); }
html:not(#_) .aa-logo__mark {
  width: 26px; height: 26px; border-radius: 50%;
  background: linear-gradient(140deg, #f7ecfb 0%, var(--mc-lilas) 100%);
  box-shadow: 0 0 0 3px rgba(255, 253, 248, .16), 0 0 0 4px rgba(199, 154, 222, .35);
}
html:not(#_) .aa-burger { color: var(--aa-tete-txt); }
html:not(#_) .aa-nav ul { background: none; box-shadow: none; border-radius: 0; padding: 0; gap: .15rem; }
html:not(#_) .aa-nav a { color: var(--aa-tete-txt); border-radius: 999px; font-weight: 600; }
html:not(#_) .aa-nav a:hover, html:not(#_) .aa-nav a.is-actif {
  background: rgba(255, 253, 248, .15);
  color: #fffdf8;
  text-decoration: none;
}
html:not(#_) .aa-nav__cta a {
  background: linear-gradient(140deg, #fdf5ec, #f0ddf4);
  color: #47125f !important;
  border-radius: 999px;
  font-weight: 700;
  box-shadow: 0 8px 18px -12px rgba(0, 0, 0, .6);
}
html:not(#_) .aa-nav__cta a:hover { background: #fffdf8; }

@media (min-width: 1100px) {
  html:not(#_) .aa-header {
    position: fixed;
    top: 0; bottom: 0; left: 0;
    width: 210px;
    border-bottom: 0;
    border-right: 1px solid rgba(199, 154, 222, .28);
    box-shadow: 14px 0 34px -30px rgba(44, 10, 64, .9);
    overflow-y: auto;
  }
  html:not(#_) .aa-header__in {
    max-width: none;
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
    min-height: 100%;
    gap: 1.7rem;
    padding: 2.1rem 1.1rem 1.5rem;
  }
  html:not(#_) .aa-logo { font-size: 1.4rem; flex-direction: column; align-items: flex-start; gap: .7rem; }
  html:not(#_) .aa-logo__txt { max-width: 100%; white-space: normal; line-height: 1.15; }
  html:not(#_) .aa-logo__mark { width: 40px; height: 40px; }
  html:not(#_) .aa-nav { display: flex; flex: 1; margin: 0; }
  html:not(#_) .aa-nav ul { flex: 1; flex-direction: column; align-items: stretch; gap: .1rem; }
  html:not(#_) .aa-nav a {
    padding: .62rem .8rem;
    border-radius: 10px;
    font-size: .95rem;
    border-left: 3px solid transparent;
  }
  html:not(#_) .aa-nav a:hover, html:not(#_) .aa-nav a.is-actif { border-left-color: var(--mc-lilas); }
  html:not(#_) .aa-nav__cta { margin-top: auto; padding-top: 1.2rem; }
  html:not(#_) .aa-nav__cta a { margin: 0; text-align: center; padding: .72rem .8rem; border-left: 0; }
  html:not(#_) body.aa { padding-left: 210px; }
}

/* --- 6. hero --------------------------------------------------------- */
html:not(#_) .aa-hero__in {
  background:
    linear-gradient(128deg, rgba(106, 27, 154, .12) 0%, rgba(232, 208, 178, .40) 44%, rgba(255, 253, 248, .9) 100%),
    var(--mc-ivoire);
  border: 1px solid var(--aa-bord);
  border-radius: 24px;
  padding: 1.7rem 1.4rem;
  box-shadow: 0 26px 54px -38px rgba(61, 15, 92, .6);
}
html:not(#_) .aa-hero__form {
  background: var(--mc-ivoire);
  border: 1px solid rgba(106, 27, 154, .18);
  border-radius: 20px;
  box-shadow: 0 16px 34px -22px rgba(61, 15, 92, .48);
}
html:not(#_) .aa-hero__form-h { font-family: var(--aa-police-titre); color: var(--mc-prune-f); }
@media (min-width: 900px) {
  html:not(#_) .aa-hero__in { padding: 2.4rem 2.6rem; border-radius: 28px; }
}

/* --- 7. filtres et champs -------------------------------------------- */
html:not(#_) .aa-filtres {
  background: var(--mc-ivoire);
  border: 1px solid var(--aa-bord);
  border-top: 3px solid var(--mc-prune);
  border-radius: 4px 18px 18px 18px;
  box-shadow: var(--aa-ombre);
}
html:not(#_) .aa-filtres__champ {
  color: var(--mc-prune-f);
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: .72rem;
}
html:not(#_) select,
html:not(#_) input[type="text"], html:not(#_) input[type="email"],
html:not(#_) input[type="tel"], html:not(#_) input[type="number"] {
  background: var(--mc-champ);
  border: 1px solid #ddd0c4;
  border-radius: 12px;
  padding-inline: .85rem;
  color: var(--mc-encre);
}
html:not(#_) textarea {
  background: var(--mc-champ);
  border: 1px solid #ddd0c4;
  border-radius: 14px;
  color: var(--mc-encre);
}
html:not(#_) ::placeholder { color: #86748b; opacity: 1; }

/* --- 8. lignes d'annonce : bord haut prune + vignette en arche ------- */
html:not(#_) .aa-liste { gap: .75rem; }
html:not(#_) .aa-ligne {
  background-color: var(--mc-ivoire);
  background-image: linear-gradient(90deg, #6a1b9a 0%, #8f3bb5 46%, #c79ade 100%);
  background-repeat: no-repeat;
  background-size: 100% 3px;
  background-position: 0 0;
  background-origin: border-box;
  border: 1px solid var(--aa-bord);
  border-top: 3px solid var(--mc-prune);
  border-radius: 4px 16px 4px 16px;
  box-shadow: var(--aa-ombre);
  padding: .8rem;
}
html:not(#_) .aa-ligne:hover {
  background-color: #fffefb;
  border-color: rgba(106, 27, 154, .35);
  box-shadow: 0 4px 8px -4px rgba(61, 15, 92, .2), 0 24px 40px -26px rgba(61, 15, 92, .6);
}
html:not(#_) .aa-ligne__img {
  border-radius: 999px 999px 10px 10px;
  background: linear-gradient(170deg, #efe2f5, #e2d2ea);
  box-shadow: 0 6px 16px -10px rgba(61, 15, 92, .6);
}
html:not(#_) .aa-ligne__nb {
  background: rgba(44, 10, 64, .78);
  color: #f7ece2;
  border-radius: 6px;
}
html:not(#_) .aa-ligne__cat {
  background: linear-gradient(180deg, #f4eaf9, #e9dbf2);
  color: #3d0f5c;
  border-radius: 3px;
  box-shadow: none;
  padding: .22rem .62rem;
  font-size: .64rem;
  letter-spacing: .09em;
  clip-path: polygon(5px 0, 100% 0, 100% calc(100% - 5px), calc(100% - 5px) 100%, 0 100%, 0 5px);
}
html:not(#_) .aa-ligne__new {
  background: var(--mc-prune);
  color: #fffaf4;
  box-shadow: 0 4px 10px -6px rgba(106, 27, 154, .8);
}
html:not(#_) .aa-ligne__titre { font-family: var(--aa-police-titre); font-size: 1.12rem; font-weight: 700; }
html:not(#_) .aa-ligne__meta { color: #5b4760; }
html:not(#_) .aa-ligne__extrait { color: #3f3143; opacity: 1; }
html:not(#_) .aa-ligne__date { color: #6d5b71; }
html:not(#_) .aa-ligne__lire { border-radius: 999px; font-weight: 700; }
@media (min-width: 720px) {
  html:not(#_) .aa-ligne { padding: .85rem 1rem .85rem .85rem; }
}

/* --- 9. listes de liens : catégories en plaques, villes en pilules --- */
html:not(#_) .aa-liens--cats li {
  background: var(--mc-ivoire);
  border: 1px solid var(--aa-bord);
  border-left: 3px solid var(--mc-prune);
  border-radius: 3px 12px 12px 3px;
  box-shadow: 0 8px 18px -16px rgba(61, 15, 92, .7);
}
html:not(#_) .aa-liens--cats li a { color: var(--mc-prune-f); font-family: var(--aa-police-titre); }
html:not(#_) .aa-liens--villes li {
  background: var(--mc-ivoire);
  border: 1px solid #e3d5e9;
  border-radius: 999px;
  box-shadow: none;
  padding: .36rem .95rem;
}
html:not(#_) .aa-liens--villes li:hover { border-color: rgba(106, 27, 154, .45); background: #fffefb; }
html:not(#_) .aa-liens__nb { color: #6d5b71; }

/* --- 10. colonne latérale -------------------------------------------- */
html:not(#_) .aa-side {
  background: var(--mc-ivoire);
  border: 1px solid var(--aa-bord);
  border-left: 3px solid var(--mc-prune);
  border-radius: 4px 18px 18px 4px;
  box-shadow: var(--aa-ombre);
  padding: 1.05rem 1.1rem;
}
html:not(#_) .aa-side__h,
html:not(#_) .aa-layout__side .aa-h2 {
  color: var(--mc-prune-f);
  font-family: var(--aa-police-titre);
  text-transform: none;
  letter-spacing: 0;
  font-size: 1.05rem;
  border-bottom: 1px dotted #ddcfc3;
  padding-bottom: .45rem;
  border-left: 0;
  padding-left: 0;
}
html:not(#_) .aa-side__liste li {
  background: var(--mc-champ);
  border: 1px solid #e3d5e9;
  border-radius: 10px;
  padding: .34rem .7rem;
}
html:not(#_) .aa-side__liste li a { color: var(--mc-prune-f); }
html:not(#_) .aa-side__liste li:hover { border-color: rgba(106, 27, 154, .45); background: var(--mc-ivoire); }
/* état actif : aplat prune → le libellé ET le compteur passent en ivoire
   (les règles .skin-4 … a pèsent 0,3,0, il faut 1,3,0 pour les reprendre) */
html:not(#_) .aa-side__liste li.is-actif {
  background: linear-gradient(140deg, #7c2bad, #4e1270);
  border-color: #4e1270;
  box-shadow: 0 8px 18px -12px rgba(61, 15, 92, .8);
}
html:not(#_) .aa-side__liste li.is-actif a { color: #fffaf4; font-weight: 700; }
html:not(#_) .aa-side__liste li.is-actif:hover { background: linear-gradient(140deg, #8b35bd, #58157e); }
html:not(#_) .aa-side__nb { color: #6d5b71; }
html:not(#_) .aa-side__liste li.is-actif .aa-side__nb { color: #f0dff6; }
html:not(#_) .aa-side__aide {
  color: #55425a;
  font-size: .86rem;
  margin: .55rem 0 0;
  padding-left: .8rem;
  border-left: 2px solid var(--mc-lilas);
}

/* --- 11. fil d'Ariane, pagination ------------------------------------ */
html:not(#_) .aa-crumbs ol { color: #6d5b71; }
html:not(#_) .aa-crumbs a { color: var(--mc-prune); }
html:not(#_) .aa-crumbs li + li::before { color: var(--mc-lilas); }
html:not(#_) .aa-pagination a, html:not(#_) .aa-pagination span {
  background: var(--mc-ivoire);
  border: 1px solid rgba(106, 27, 154, .28);
  border-radius: 999px;
  box-shadow: none;
  color: var(--mc-prune-f);
}
html:not(#_) .aa-pagination .is-actif { background: var(--mc-prune); border-color: var(--mc-prune); color: #fffaf4; }
html:not(#_) .aa-pagination__etat { color: #6d5b71; }

/* --- 12. « poster mon annonce » : carte centrée en arche ------------- */
html:not(#_) .aa-bloc--deposer { display: flex; justify-content: center; margin-top: 2.6rem; }
html:not(#_) .aa-bloc--deposer .aa-deposer-cta {
  width: min(100%, 620px);
  text-align: center;
  padding: 2.4rem 1.6rem 1.8rem;
  background-color: var(--mc-ivoire);
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.2s-8.2-5.2-8.2-10.6A4.8 4.8 0 0 1 12 7.1a4.8 4.8 0 0 1 8.2 3.5c0 5.4-8.2 10.6-8.2 10.6z' fill='%236a1b9a' fill-opacity='.08'/%3E%3C/svg%3E"),
    linear-gradient(180deg, rgba(106, 27, 154, .10), rgba(255, 253, 248, 0) 58%);
  background-repeat: no-repeat, no-repeat;
  background-position: right 22px bottom 10px, 0 0;
  background-size: 88px 88px, 100% 100%;
  border: 1px solid var(--aa-bord);
  border-top: 3px solid var(--mc-prune);
  border-radius: 60px 60px 20px 20px;
  box-shadow: 0 26px 52px -34px rgba(61, 15, 92, .6);
}
@media (min-width: 800px) {
  html:not(#_) .aa-compo-3 .aa-bloc--deposer .aa-deposer-cta { text-align: center; padding: 2.7rem 2rem 2rem; }
}

/* --- 13. fiche d'annonce --------------------------------------------- */
html:not(#_) .aa-fiche__titre { font-family: var(--aa-police-titre); color: var(--mc-encre); }
html:not(#_) .aa-fiche__cat, html:not(#_) .aa-fiche__cat a { color: var(--mc-prune); }
html:not(#_) .aa-fiche__sous { color: #5b4760; }
html:not(#_) .aa-fiche__photo {
  border-radius: 104px 104px 20px 20px;
  background: linear-gradient(170deg, #efe2f5, #ddccea);
  box-shadow: 0 22px 46px -28px rgba(61, 15, 92, .7);
}
html:not(#_) .aa-fiche__photo--vide { border-radius: 20px; border: 1px dashed #d9c8cf; }
html:not(#_) .aa-fiche__miniatures img { border-radius: 10px 10px 4px 4px; border-color: transparent; }
html:not(#_) .aa-fiche__miniatures img:hover { border-color: var(--mc-prune); }
/* le badge descend dans le coin BAS-droit : l'arche de la photo rognait « Récente » */
html:not(#_) .aa-fiche__photo .aa-fiche__new {
  top: auto;
  bottom: .6rem;
  right: .6rem;
}
html:not(#_) .aa-fiche__new {
  background: var(--mc-prune);
  color: #fffaf4;
  box-shadow: 0 6px 14px -8px rgba(20, 4, 30, .9);
}
html:not(#_) .aa-fiche__meta { color: #5b4760; }
html:not(#_) .aa-fiche__cta--haut {
  background-color: var(--mc-ivoire);
  background-image: linear-gradient(90deg, #6a1b9a 0%, #8f3bb5 46%, #c79ade 100%);
  background-repeat: no-repeat;
  background-size: 100% 3px;
  background-position: 0 0;
  background-origin: border-box;
  border: 1px solid var(--aa-bord);
  border-top: 3px solid var(--mc-prune);
  border-radius: 4px 18px 18px 18px;
  box-shadow: 0 18px 38px -24px rgba(61, 15, 92, .55);
  padding: 1rem;
}
html:not(#_) .aa-fiche__infos {
  background: var(--mc-champ);
  border: 1px solid var(--aa-bord);
  border-radius: 4px 18px 18px 4px;
}
html:not(#_) .aa-fiche__infos dt { color: #6d5b71; }
html:not(#_) .aa-fiche__infos dd { color: var(--mc-encre); font-weight: 600; }
html:not(#_) .aa-fiche__plage { background: rgba(106, 27, 154, .12); color: var(--mc-prune-f); border-radius: 999px; }
html:not(#_) .aa-fiche__phy {
  background: var(--mc-ivoire);
  border: 1px solid #e3d5e9;
  border-radius: 12px;
}
html:not(#_) .aa-fiche__physique dt { color: #6d5b71; }
html:not(#_) .aa-repondre {
  background: var(--mc-ivoire);
  border: 1px solid var(--aa-bord);
  border-left: 3px solid var(--mc-prune);
  border-radius: 4px 18px 18px 4px;
  box-shadow: var(--aa-ombre);
}
html:not(#_) .aa-repondre__intro, html:not(#_) .aa-fiche__signaler, html:not(#_) .aa-retour { color: #5b4760; }
html:not(#_) .aa-fiche__barre {
  background: rgba(255, 253, 248, .95);
  border-top: 1px solid rgba(106, 27, 154, .25);
  box-shadow: 0 -12px 28px -16px rgba(61, 15, 92, .45);
}
html:not(#_) .aa-vide { background: var(--mc-ivoire); border-color: #d9c8cf; color: #5b4760; }
html:not(#_) .aa-depot__bloc {
  background: var(--mc-ivoire);
  border: 1px solid var(--aa-bord);
  border-top: 3px solid var(--mc-prune);
  border-radius: 4px 18px 18px 18px;
  box-shadow: var(--aa-ombre);
}
html:not(#_) .aa-depot__bloc legend { font-family: var(--aa-police-titre); color: var(--mc-prune-f); }
html:not(#_) .aa-form__lbl { color: #3c2f41; }
html:not(#_) .aa-form__aide, html:not(#_) .aa-regles { color: #5e4a64; }

/* --- 14. pied de page prune nuit, arche en haut ---------------------- */
html:not(#_) .aa-footer {
  background: var(--aa-pied);
  color: var(--aa-pied-txt);
  border-radius: 46px 46px 0 0;
  margin-top: 3.2rem;
  padding-block: 2.5rem 1.2rem;
  box-shadow: 0 -18px 40px -34px rgba(44, 10, 64, .8);
}
html:not(#_) .aa-footer a { color: #f4ebe1; }
html:not(#_) .aa-footer ul li a {
  background: rgba(255, 253, 248, .08);
  border: 1px solid rgba(244, 235, 225, .3);
  color: #f6efe6;
  border-radius: 999px;
  padding: .36rem .9rem;
  box-shadow: none;
}
html:not(#_) .aa-footer ul li a:hover { background: #fffdf8; color: #3d0f5c; text-decoration: none; }
html:not(#_) .aa-footer__brand { font-family: var(--aa-police-titre); font-size: 1.45rem; color: #fdf6ee; }
html:not(#_) .aa-footer__h {
  color: #ddc6ec;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .73rem;
  font-family: var(--aa-police);
}
html:not(#_) .aa-footer__membres { color: #f0e4d8; }
html:not(#_) .aa-footer__fictif { color: #e0d0c4; opacity: 1; font-size: .86rem; }
html:not(#_) .aa-footer__bas {
  border-top: 1px solid rgba(244, 235, 225, .2);
  color: #ded0c5;
  opacity: 1;
}

/* --- 15. porte d'âge, pop-up, pastilles ------------------------------ */
html:not(#_) .aa-gate, html:not(#_) .aa-popup { background: rgba(32, 8, 46, .84); }
html:not(#_) .aa-gate__box, html:not(#_) .aa-popup__box {
  background-color: var(--mc-ivoire);
  background-image: linear-gradient(90deg, #6a1b9a 0%, #8f3bb5 46%, #c79ade 100%);
  background-repeat: no-repeat;
  background-size: 100% 4px;
  background-position: 0 0;
  border-radius: 22px;
  box-shadow: 0 34px 66px -26px rgba(20, 4, 30, .75);
}
html:not(#_) .aa-gate__box h2, html:not(#_) .aa-popup__titre {
  font-family: var(--aa-police-titre);
  color: var(--mc-encre);
}
html:not(#_) .aa-gate__mark {
  background: linear-gradient(140deg, #7c2bad, #4e1270);
  color: #fffaf4;
  box-shadow: 0 0 0 5px var(--mc-ivoire), 0 0 0 7px rgba(106, 27, 154, .35), 0 14px 28px -14px rgba(61, 15, 92, .8);
}
html:not(#_) .aa-popup__texte, html:not(#_) .aa-gate__box p { color: #4d3c52; }
html:not(#_) .aa-popup__pour { color: var(--mc-prune); }
html:not(#_) .aa-popup__fermer { color: #6d5b71; }
html:not(#_) .aa-chips li, html:not(#_) .aa-chip {
  background: var(--mc-champ);
  border: 1px solid #ddd0c4;
  border-radius: 999px;
  color: #3c2f41;
}
html:not(#_) .aa-chip:has(input:checked) {
  border-color: var(--mc-prune);
  background: rgba(106, 27, 154, .13);
  color: var(--mc-prune-f);
  font-weight: 700;
}
html:not(#_) .aa-chips--lecture li { background: var(--mc-ivoire); }

/* --- 16. mouvement réduit ------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  html:not(#_) .aa-ligne, html:not(#_) .aa-ligne__img img,
  html:not(#_) .aa-btn, html:not(#_) .aa-liens--villes li { transition: none; }
}
