@charset "UTF-8";
/* ---------------------------------------------------------------------------------------------
   Brique « programmer » — le lien « Programmer cet artiste » (JulienWeb, 03/10/2026).

   Mise en file par brique.php sur les fiches artiste et projet, /event/, /agenda-artist/… et
   /agenda-event/… ; jamais sur l'accueil, où le lien est celui d'event-home.php, stylé par
   assets/agenda-home.css. Servie après style.css et commun.css.

   Le bouton est .jws-btn de commun.css (la pilule .is-btn-jelly du thème : fond orange, texte
   indigo, 5,10:1). Le lien des lignes reprend la forme de .event-booking de l'accueil : petites
   capitales, losange orange devant. Deux écarts voulus avec l'accueil, tenus par la charte :
     - le texte est indigo, pas orange (#f39200 sur blanc : 2,35:1) ; l'orange reste au losange ;
     - pas de gras.
   Et le lien est toujours visible, dans le flux de la ligne : celui de l'accueil est posé en
   absolu en bas à droite et n'apparaît qu'au survol (sauf au doigt, où il reste affiché).
   La variante « au survol » existe plus bas, éteinte.

   Rien ne se pose sur une photo. Aucune largeur fixe : tout tient à 320 px sans requête de
   largeur. Les transitions sont coupées par commun.css sous prefers-reduced-motion.

   1. Le bouton des fiches
   2. Le bloc BOOKING d'une fiche sans texte « pour info »
   3. Fiche sans date à venir
   4. Le lien des lignes d'agenda
   --------------------------------------------------------------------------------------------- */


/* -- 1. Le bouton des fiches ------------------------------------------------------------------
   Dans le bloc BOOKING (.artist-pour-info du thème, .9em), entre l'intertitre et le texte
   d'Ourida, et dans la ligne « Aucune date annoncée ». Le thème pose « div p { margin: 0 } ». */

.jws-programmer {
    margin: 0 0 1em;
}

.jws-programmer__btn.jws-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    max-width: 100%;
    min-height: 44px;                 /* cible tactile */
    margin: 0;
    padding: .5em 1.4em;
    font-size: 1em;                   /* .jws-btn est à .8em : 11,5 px dans un encart à .9em */
    line-height: 1.25;
    text-align: center;
}


/* -- 2. Le bloc BOOKING d'une fiche sans texte « pour info » -----------------------------------
   Il porte les classes du bloc du thème (.artist-pour-info.artist-bloc) : bordure indigo,
   intertitre en capitales. Le bouton y est seul, sans marge sous lui. */

.jws-programmer__bloc .jws-programmer {
    margin-bottom: 0;
}


/* -- 3. Fiche sans date à venir ---------------------------------------------------------------
   À la place du bloc Agenda, au-dessus de la biographie : une phrase, puis le bouton.
   Sur la fiche artiste, le conteneur du thème qui précède (.artist-events-lanceur, padding 2em 0
   dans style.css) est vide et garde ses 2em du bas : on les reprend, pour le même écart que sur
   la fiche projet, qui n'a pas ce conteneur. Écart lu dans la feuille, pas encore mesuré à
   l'écran : à regarder sur le dev (fiche Tony Paeleman, fiche projet Coisa Fina). */

.jws-programmer__sans-date {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .6em 1.2em;
    margin: 2em 0 0;
    color: var(--jws-indigo, #312783);
}

.artist-events-lanceur + .jws-programmer__sans-date {
    margin-top: -2em;
}

.jws-programmer__sans-date-texte,
.jws-programmer__sans-date .jws-programmer {
    margin: 0;
    font-size: .9em;                  /* la taille de la biographie, dessous */
}


/* -- 4. Le lien des lignes d'agenda -----------------------------------------------------------
   Dernier élément de .event-ligne, aligné à droite comme les liens de billetterie (.event-links),
   sous eux, dans le flux. */

.jws-programmer__ligne {
    margin: 4px 0 0;
    line-height: 1.2;
    text-align: right;
}

.jws-programmer__lien {
    display: inline-block;
    padding: 6px 0;                   /* 12 px de plus que la ligne de texte à la souris ; 44 px au doigt (plus bas) */
    color: var(--jws-indigo, #312783);
    font-size: .78em;
    letter-spacing: .02em;
    text-decoration: none;
    text-transform: uppercase;
}

.jws-programmer__lien .jws-tesselle {
    width: 7px;
    height: 7px;
    margin: 0 .6em 0 0;
    vertical-align: .08em;
}

/* Le thème pose a:hover en orange : on garde l'indigo, le survol se lit au soulignement. */
.jws-programmer__lien:hover,
.jws-programmer__lien:focus-visible {
    color: var(--jws-indigo, #312783);
    text-decoration: underline;
}

.jws-programmer__lien:focus-visible {
    outline: 3px solid var(--jws-indigo, #312783);
    outline-offset: 2px;
}

/* Au doigt : 44 px de haut. */
@media (pointer: coarse) {
    .jws-programmer__lien {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        padding: 0 0 0 12px;
    }
}

/* Variante « comme sur l'accueil », éteinte par défaut (filtre jws_programmer_au_survol dans
   brique.php) : à la souris, le lien n'apparaît qu'au survol de sa ligne. Sa place reste
   réservée, la liste ne bouge pas. Au clavier il apparaît au focus ; au doigt il reste affiché. */
@media (hover: hover) and (pointer: fine) {
    .jws-programmer__ligne--survol .jws-programmer__lien {
        opacity: 0;
        transition: opacity .2s;
    }

    .event-ligne:hover .jws-programmer__ligne--survol .jws-programmer__lien,
    .jws-programmer__ligne--survol:hover .jws-programmer__lien,
    .jws-programmer__ligne--survol .jws-programmer__lien:focus-visible {
        opacity: 1;
    }
}
