/* Texte des annonces Internet (site public et editeur SMJ). Couleurs de la charte Job Medical. */
.annonce-texte h3, .vitrine .annonce-texte h3 { font-size: 1.15rem; font-weight: 700; color: #823f91; margin: 20px 0 8px; }
.annonce-texte h4, .vitrine .annonce-texte h4 { font-size: 1rem; font-weight: 700; margin: 14px 0 6px; }
.annonce-texte > p:first-child,
.annonce-texte > p:last-child { font-size: 1.25rem; color: #33003C; margin: 6px 0 14px; }
.annonce-texte a { color: #823f91; text-decoration: underline; }

/* Titre de chaque offre dans la liste (Offres interimaires, Pole medecin) : meme violet que les intertitres */
#accordion .card-header .btn-link { color: #823f91; font-weight: 700; font-size: 1.15rem; text-align: left; white-space: normal; }
#accordion .card-header .btn-link:hover,
#accordion .card-header .btn-link:focus { color: #33003C; text-decoration: none; }

/* Assistant de redaction (SMJ, Annonces Internet) */
.annonce-grille { display: flex; flex-wrap: wrap; margin: 0 -8px; }
.annonce-grille > div { flex: 1 1 280px; padding: 0 8px; }
.annonce-etape { font-weight: 600; color: #33003C; margin: 18px 0 8px; border-bottom: 1px solid #e3dbe8; padding-bottom: 4px; }
.annonce-avantages ul { list-style: none; padding: 0; columns: 2; }
.annonce-avantages li label { font-weight: normal; }
.annonce-barre { border: 1px solid #ccc; border-bottom: 0; background: #f7f4f9; padding: 4px; border-radius: 4px 4px 0 0; }
.annonce-barre button { min-width: 34px; }
.annonce-editeur { border: 1px solid #ccc; min-height: 260px; padding: 10px 14px; background: #fff; border-radius: 0 0 4px 4px; overflow: auto; }
.annonce-editeur h3 { font-size: 17px; font-weight: 700; color: #823f91; margin: 14px 0 6px; }
.annonce-editeur a { color: #823f91; text-decoration: underline; }
.annonce-verrou { background: #f7f4f9; border-left: 3px solid #823f91; padding: 8px 12px; color: #555; margin-top: 10px; }

/* Proposition de l assistant IA (SMJ, Annonces Internet) */
.annonce-proposition { border: 1px dashed #823f91; background: #fbf8fc; border-radius: 4px; padding: 10px 14px; margin: 10px 0; }
.annonce-proposition-titre { font-weight: 600; color: #33003C; margin-bottom: 6px; }
.annonce-proposition-titre small { font-weight: normal; color: #6b6475; }
.annonce-proposition-texte { background: #fff; border: 1px solid #e3dbe8; padding: 8px 12px; margin-bottom: 8px; max-height: 420px; overflow: auto; }

/* Bouton « Publier des annonces » dans l encart et le bandeau rouges (le theme met les liens des alertes en blanc) */
.alert a.btn-publier-annonces, .alert a.btn-publier-annonces:hover, .alert a.btn-publier-annonces:focus { background: #fff; color: #a94442 !important; border: 1px solid #fff; font-weight: 600; text-decoration: none; margin-left: 8px; }
.alert a.btn-publier-annonces:hover { background: #f7e1e1; }
.annonce-etat-ville { margin: 4px 0 0 4px; }
.annonce-etat-ville .annonce-manque { background: #fff; color: #a94442; }
.annonce-champs-obligatoires { color: #6b6475; font-size: .9em; margin: 0 0 6px; }

/* Redaction avec apercu a cote (SMJ, Annonces Internet) : formulaire a gauche, annonce telle que sur le site a droite */
.annonce-redaction { display: flex; align-items: flex-start; gap: 24px; }
.annonce-saisie { flex: 1 1 56%; min-width: 0; }
.annonce-apercu { flex: 1 1 44%; min-width: 0; position: relative; max-height: calc(100vh - 80px); overflow: auto;
  border: 1px solid #e3dbe8; border-radius: 6px; background: #f4f1f6; }
.annonce-apercu-titre { position: sticky; top: 0; z-index: 1; background: #33003C; color: #fff; padding: 8px 12px; font-weight: 600; }
.annonce-apercu-titre small { color: #d9c8e6; font-weight: normal; }
.annonce-apercu-contenu { padding: 12px; }
.btn-voir-apercu { display: none; margin-left: 8px; }
.annonce-zone { margin: 6px 0 14px; }
.annonce-zone .annonce-editeur { min-height: 90px; }
.annonce-zone .bouton-ia { margin-left: 6px; }
.annonce-boutons { margin: 20px 0 10px; }
.annonce-boutons .btn { margin: 0 8px 8px 0; }
/* l annonce comme sur le site public */
.apercu-page { background: #fff; border-radius: 6px; padding: 16px 18px; color: #2d2433; }
.apercu-page h1 { font-size: 1.5rem; color: #33003C; font-weight: 700; margin: 0 0 6px; line-height: 1.25; }
.apercu-page .meta { color: #6b6475; font-size: .95em; margin: 0 0 12px; }
.apercu-page .carte { border-top: 1px solid #eee; padding-top: 6px; }
.apercu-page .btn-postuler { display: inline-block; background: #823f91; color: #fff; border-radius: 22px; padding: 8px 22px; font-weight: 600; }
.annonce-apercu-validation { position: static; max-height: none; padding: 12px; }
@media (max-width: 1199px) {
  .annonce-redaction { display: block; }
  .annonce-apercu { max-height: none; margin-top: 18px; transform: none !important; }
  .btn-voir-apercu { display: inline-block; }
}
/* SMJ compte en px (taille de base differente du site public) */
.apercu-page h1 { font-size: 22px; }
.apercu-page .annonce-texte h3 { font-size: 17px; }
.apercu-page .annonce-texte h4 { font-size: 15px; }
.apercu-page .annonce-texte > p:first-child, .apercu-page .annonce-texte > p:last-child { font-size: 17px; }
.annonce-relecture { margin: 0 0 14px; }
.annonce-relecture { margin: 0 0 14px; }
