/* anuncios-adultos.es — registre « azotea nocturna » (toits-terrasses la nuit)
   Palette : accent ardoise #37474f (favicon) · nuit #1f2b31 · neutre chaud chaux/sable #f4ecdf / #efe3cf
   · lueur des guirlandes #f3d9a4 · encre #1f2a30.
   Formes signature : arche (vignettes, photo de fiche, bloc inscription), pilule (bandeaux, nav, boutons),
   guirlande d'ampoules (sous l'en-tête, titres de colonne), lune en médaillon (logo, bandeau d'accueil),
   parapet crénelé (bas du bandeau d'accueil, haut du pied). Base : skin 1 / composition 5. */

html:not(#_) body.aa {
  --aa-accent: #37474f; --aa-teinte: #37474f;
  --aa-primaire: #37474f; --aa-primaire-fonce: #263238; --aa-primaire-txt: #fffaf1;
  --aa-page: #efe6d8; --aa-fond: #fffcf7; --aa-surface: #fffcf7; --aa-surface-2: #f6eee2;
  --aa-texte: #1f2a30; --aa-muet: #545e63; --aa-bord: #e3d7c5; --aa-lien: #2c3b42;
  --aa-tete: #1f2b31; --aa-tete-txt: #fbf3e6; --aa-barre: #2a3940;
  --aa-bande: #efe3cf; --aa-bande-txt: #1f2a30; --aa-bande-bord: #37474f;
  --aa-secondaire: #2c3b42; --aa-pied: #1c262b; --aa-pied-txt: #e6ddd0;
  --az-lueur: #f3d9a4; --az-nuit: #1f2b31;
  --aa-rayon: 18px; --aa-rayon-s: 12px;
  --aa-ombre: 0 2px 4px rgba(31, 43, 49, .06), 0 18px 40px -24px rgba(38, 50, 56, .45);
  --aa-police-titre: "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", Georgia, serif;
  background:
    radial-gradient(1200px 380px at 50% -120px, rgba(55, 71, 79, .10), transparent 70%),
    var(--aa-page);
}

/* ---- en-tête : ciel de nuit + guirlande d'ampoules ---- */
html:not(#_) .aa-header {
  box-shadow: 0 14px 30px -22px rgba(31, 43, 49, .8);
  padding-bottom: 22px;
  background:
    radial-gradient(circle at 26px 14px, var(--az-lueur) 0 3px, rgba(243, 217, 164, .3) 4px 7px, transparent 8px) 0 100% / 52px 22px repeat-x,
    radial-gradient(ellipse 26px 9px at 26px 2px, transparent 0 88%, rgba(243, 217, 164, .5) 90% 100%, transparent 101%) 0 100% / 52px 22px repeat-x,
    radial-gradient(1.2px 1.2px at 12% 30%, rgba(255, 255, 255, .55) 50%, transparent),
    radial-gradient(1px 1px at 48% 18%, rgba(255, 255, 255, .45) 50%, transparent),
    radial-gradient(1.4px 1.4px at 78% 40%, rgba(255, 255, 255, .4) 50%, transparent),
    linear-gradient(180deg, #172126 0%, #263238 70%, #2c3a41 100%);
}
html:not(#_) .aa-logo__mark {
  border-radius: 50%; width: 32px; height: 32px;
  background: radial-gradient(circle at 68% 34%, #1f2b31 0 10px, transparent 10.5px), var(--az-lueur);
  box-shadow: 0 0 0 3px rgba(243, 217, 164, .18), 0 0 18px rgba(243, 217, 164, .45);
}
html:not(#_) .aa-logo__txt { font-family: var(--aa-police-titre); font-weight: 700; letter-spacing: .01em; }
html:not(#_) .aa-logo__sous { opacity: .85; }
html:not(#_) .aa-header .aa-header__cta {
  background: var(--az-lueur); color: #1f2a30; border-color: #e7c47f; border-radius: 999px;
  box-shadow: 0 0 22px -6px rgba(243, 217, 164, .7);
}
html:not(#_) .aa-header .aa-nav { background: transparent; margin-top: .2rem; }
html:not(#_) .aa-header .aa-nav ul { gap: .3rem; padding: .35rem 0; }
html:not(#_) .aa-header .aa-nav a { border-radius: 999px; border-bottom: 0; padding: .5rem .95rem; color: #f3ead9; }
html:not(#_) .aa-header .aa-nav a:hover { background: rgba(243, 217, 164, .12); }
html:not(#_) .aa-header .aa-nav a.is-actif { background: #f4ecdf; color: #1f2a30; box-shadow: inset 0 0 0 1px #e3d7c5; }
@media (max-width: 859px) {
  html:not(#_) .aa-header .aa-nav { background: #24333a; border-radius: 18px; }
  html:not(#_) .aa-header .aa-nav a.is-actif { border-left: 0; }
  html:not(#_) .aa-header .aa-nav__cta a { background: var(--az-lueur); color: #1f2a30; }
  html:not(#_) .aa-header .aa-burger { border-color: rgba(243, 217, 164, .4); border-radius: 50%; }
}

/* ---- conteneur ---- */
html:not(#_) .aa-main > .aa-wrap { border-radius: 26px; border-color: #e6dccc; }

/* ---- bandeau d'accueil : terrasse de nuit, lune, parapet ---- */
html:not(#_) .aa-hero.aa-hero {
  --aa-texte: #fffaf1; --aa-muet: #dbe3e6; --aa-bord: rgba(243, 217, 164, .3);
  position: relative; overflow: hidden; border: 0; border-radius: 24px 24px 18px 18px;
  padding: 1.5rem 1.4rem 2.6rem; color: #fffaf1;
  background:
    radial-gradient(circle at calc(100% - 56px) 40px, #2a3940 0 17px, transparent 17.5px),
    radial-gradient(circle at calc(100% - 64px) 46px, var(--az-lueur) 0 20px, rgba(243, 217, 164, .18) 21px 34px, transparent 35px),
    linear-gradient(90deg, #f4ecdf 0 30px, transparent 30px 44px) 0 calc(100% - 9px) / 44px 14px repeat-x,
    linear-gradient(#f4ecdf, #f4ecdf) 0 100% / 100% 10px no-repeat,
    radial-gradient(1.3px 1.3px at 20% 22%, rgba(255, 255, 255, .6) 50%, transparent),
    radial-gradient(1px 1px at 58% 14%, rgba(255, 255, 255, .5) 50%, transparent),
    radial-gradient(1.2px 1.2px at 40% 46%, rgba(255, 255, 255, .4) 50%, transparent),
    linear-gradient(160deg, #1d282d 0%, #2f3e46 62%, #37474f 100%);
  box-shadow: 0 22px 40px -26px rgba(31, 43, 49, .9);
}
html:not(#_) .aa-hero .aa-h1 { color: #fffaf1; font-weight: 700; max-width: calc(100% - 90px); }
html:not(#_) .aa-hero .aa-intro { color: #dbe3e6; max-width: min(72ch, calc(100% - 84px)); }
html:not(#_) .aa-hero .aa-hero__chiffres span { background: rgba(243, 217, 164, .14); border-color: rgba(243, 217, 164, .45); color: #fbefd6; border-radius: 999px; }
html:not(#_) .aa-hero .aa-hero__chiffres span::before { background: var(--az-lueur); box-shadow: 0 0 8px var(--az-lueur); }

/* ---- bandeaux de section : pilules de chaux à liseré ardoise ---- */
html:not(#_) .aa-h2, html:not(#_) .aa-bande, html:not(#_) .aa-depot__bloc legend {
  background: var(--aa-bande); color: var(--aa-bande-txt); border-left: 0; border-radius: 999px;
  box-shadow: inset 0 0 0 1px #e1d2b9, inset 5px 0 0 0 #37474f; padding: .5rem 1.1rem .5rem 1.2rem;
  font-family: var(--aa-police-titre); letter-spacing: .06em;
}
html:not(#_) .aa-depot__bloc legend::before { background: #37474f; color: #fffaf1; }
/* titres de colonne : bandeau de nuit + rang d'ampoules */
html:not(#_) .aa-side .aa-side__h {
  background:
    radial-gradient(circle at 13px 4px, var(--az-lueur) 0 2px, transparent 3px) 0 100% / 26px 8px repeat-x,
    linear-gradient(180deg, #24333a, #2f3e46);
  color: #fbf3e6; border-bottom: 0; padding-bottom: .85rem; border-radius: 17px 17px 0 0; box-shadow: none;
}
html:not(#_) .aa-side { border-radius: 18px; background: #f7f0e5; box-shadow: 0 14px 28px -24px rgba(38, 50, 56, .6); }
html:not(#_) .aa-side.aa-side--inscription { border-radius: 90px 90px 18px 18px; overflow: hidden; }
html:not(#_) .aa-side.aa-side--inscription .aa-side__h { border-radius: 0; padding: 1.1rem 2.6rem .85rem; justify-content: center; text-align: center; }
html:not(#_) .aa-side__liste li::before { background: var(--az-lueur); box-shadow: 0 0 0 2px rgba(55, 71, 79, .25); }
html:not(#_) .aa-side__nb { background: #fffcf7; color: #2c3b42; }

/* ---- lignes d'annonce : cartes, vignette en arche ---- */
html:not(#_) .aa-liste .aa-ligne {
  background: #fffcf7; border: 1px solid #ebe1d1; border-radius: 18px; margin-bottom: .75rem;
  padding: .85rem .9rem; transition: box-shadow .2s ease, border-color .2s ease;
}
html:not(#_) .aa-liste .aa-ligne:hover { background: #fffaf2; border-color: #d9c9ae; box-shadow: 0 16px 30px -22px rgba(38, 50, 56, .55); }
html:not(#_) .aa-ligne .aa-ligne__img {
  border-radius: 50% 50% 12px 12px / 38% 38% 12px 12px; padding: 3px; border: 0;
  background: linear-gradient(180deg, var(--az-lueur), #e7d4b3);
  box-shadow: 0 8px 16px -10px rgba(38, 50, 56, .7);
}
html:not(#_) .aa-ligne .aa-ligne__img img { border-radius: 50% 50% 10px 10px / 38% 38% 10px 10px; }
html:not(#_) .aa-ligne .aa-ligne__cat { color: #3f525b; }
html:not(#_) .aa-ligne .aa-ligne__new { background: #37474f; color: #fbefd6; border-radius: 999px; padding: .14rem .55rem; }
html:not(#_) .aa-ligne .aa-ligne__titre a { color: #263238; font-family: var(--aa-police-titre); }
html:not(#_) .aa-ligne .aa-ligne__lire { border-radius: 999px; border-color: #37474f; color: #263238; background: #f6eee2; }
html:not(#_) .aa-ligne .aa-ligne__lire:hover { background: #37474f; color: #fffaf1; }

/* ---- boutons ---- */
html:not(#_) .aa-btn { border-radius: 999px; }
html:not(#_) .aa-btn.aa-btn--primaire {
  background: linear-gradient(180deg, #415660, #2f3e46); border-color: #263238; color: #fffaf1;
  box-shadow: 0 10px 22px -12px rgba(38, 50, 56, .85), inset 0 1px 0 rgba(255, 255, 255, .14);
}
html:not(#_) .aa-btn.aa-btn--secondaire { background: #fffcf7; color: #263238; border-color: #37474f; }

/* ---- blocs de l'accueil ---- */
html:not(#_) .aa-liens li { border-radius: 999px; background: #f7f0e5; padding-left: 1.2rem; }
html:not(#_) .aa-liens li::before { width: 7px; height: 7px; top: 50%; bottom: auto; left: .5rem; transform: translateY(-50%); border-radius: 50%; background: var(--az-lueur); box-shadow: 0 0 0 2px rgba(55, 71, 79, .35); }
html:not(#_) .aa-etapes li { border-radius: 20px 20px 14px 14px; background: #f7f0e5; border-color: #e6dac6; }
html:not(#_) .aa-etapes li::before { background: #37474f; color: #fffaf1; box-shadow: 0 0 0 3px #fffcf7, 0 0 0 4px #e1d2b9; }
html:not(#_) .aa-deposer-cta, html:not(#_) .aa-deposer-cta__bloc { border-radius: 22px; }
html:not(#_) .aa-pagination a, html:not(#_) .aa-pagination span { border-radius: 999px; }
html:not(#_) .aa-pagination .is-actif { background: #37474f; border-color: #263238; color: #fffaf1; }

/* ---- champs ---- */
html:not(#_) .aa select, html:not(#_) .aa input[type="text"], html:not(#_) .aa input[type="email"],
html:not(#_) .aa input[type="tel"], html:not(#_) .aa input[type="number"], html:not(#_) .aa textarea {
  border-radius: 12px; border-color: #dccfba; background-color: #fffdfa;
}
html:not(#_) .aa select:focus, html:not(#_) .aa input:focus, html:not(#_) .aa textarea:focus { border-color: #37474f; box-shadow: 0 0 0 3px rgba(55, 71, 79, .18); }
html:not(#_) .aa .aa-chips li, html:not(#_) .aa .aa-chip { border-radius: 999px; background: #f6eee2; border-color: #e1d2b9; color: #1f2a30; }
html:not(#_) .aa .aa-chip:has(input:checked) { background: #37474f; color: #fffaf1; border-color: #263238; }

/* ---- fiche d'annonce ---- */
html:not(#_) .aa-fiche__titre { border-bottom: 0; padding-bottom: 1rem; font-weight: 700;
  background: radial-gradient(circle at 9px 4px, #37474f 0 2px, transparent 2.5px) 0 100% / 18px 8px repeat-x; }
html:not(#_) .aa-fiche__photo {
  border-radius: 50% 50% 16px 16px / 26% 26% 16px 16px; overflow: hidden; padding: 6px;
  background: linear-gradient(180deg, var(--az-lueur), #e8d6b6); box-shadow: 0 22px 34px -22px rgba(31, 43, 49, .85);
}
html:not(#_) .aa-fiche__photo .aa-fiche__img, html:not(#_) .aa-fiche__photo .aa-fiche__fond { border-radius: 50% 50% 12px 12px / 25% 25% 12px 12px; }
html:not(#_) .aa-fiche__miniatures img { border-radius: 50% 50% 8px 8px / 36% 36% 8px 8px; }
html:not(#_) .aa-fiche__infos { border-radius: 16px; overflow: hidden; border-color: #e3d7c5; }
html:not(#_) .aa-fiche__infos > div:nth-child(odd) { background: #f6eee2; }
html:not(#_) .aa-fiche__cta { border-radius: 20px; }
html:not(#_) .aa-fiche__phy { border-radius: 14px; border-top: 3px solid #37474f; background: #fbf6ee; }
html:not(#_) .aa-fiche__plage { border-radius: 999px; background: #f3e8d6; color: #1f2a30; }
html:not(#_) .aa-repondre { border-radius: 22px; background: #f7f0e5; border-color: #e6dac6; }
html:not(#_) .aa-depot__bloc { border-radius: 20px; background: #fffcf7; border-color: #e6dac6; }

html:not(#_) .aa-fiche__tete .aa-fiche__new { background: #37474f; color: #fbefd6; border-radius: 999px; padding-inline: .6rem; }
@media (max-width: 759px) {
  html:not(#_) .aa-h2, html:not(#_) .aa-bande { border-radius: 18px; letter-spacing: .03em; font-size: .86rem; }
}

/* ---- pop-up / porte ---- */
html:not(#_) .aa-popup__box, html:not(#_) .aa-gate__box { border-radius: 24px; border-top: 0; box-shadow: inset 0 5px 0 #37474f, 0 30px 60px -30px rgba(0, 0, 0, .7); }

/* ---- pied : parapet crénelé, ciel de nuit ---- */
html:not(#_) .aa-footer {
  border-top: 0; margin-top: 2rem; padding-top: 16px;
  background:
    linear-gradient(90deg, var(--aa-page) 0 36px, transparent 36px 54px) 0 0 / 54px 16px repeat-x,
    radial-gradient(1.2px 1.2px at 15% 40%, rgba(255, 255, 255, .45) 50%, transparent),
    radial-gradient(1px 1px at 62% 30%, rgba(255, 255, 255, .4) 50%, transparent),
    radial-gradient(1.3px 1.3px at 85% 55%, rgba(255, 255, 255, .35) 50%, transparent),
    linear-gradient(180deg, #24333a 0, #1c262b 60%);
}
html:not(#_) .aa-footer .aa-footer__h { color: var(--az-lueur); border-bottom-color: rgba(243, 217, 164, .22); font-family: var(--aa-police-titre); }
html:not(#_) .aa-footer .aa-footer__brand { color: #fffaf1; }
html:not(#_) .aa-footer .aa-footer__fictif { color: #c9c0b3; }
html:not(#_) .aa-footer .aa-footer__bas { background: rgba(0, 0, 0, .28); }

/* ---- barre mobile (couleurs seulement) ---- */
html:not(#_) .aa-mobar, html:not(#_) .aa-fiche__barre { background: rgba(255, 250, 242, .95); border-top-color: #e3d7c5; }

@media (prefers-reduced-motion: reduce) {
  html:not(#_) .aa-liste .aa-ligne { transition: none; }
}
