/*
 * Pages Penta Com de l'appli : même allure que le fil (cartes arrondies, boutons lisibles en mode nuit et en mode jour).
 * Chargé par components/mobile_header.php sur les seules pages Penta Com ($pm_header_pentacom), après les CSS des pages.
 * --sur-blue (texte posé sur le bleu de Penta Com) est défini dans le même en-tête : sombre la nuit, blanc le jour.
 */

/* Boutons pleins : texte toujours lisible sur le bleu (le jour, le bleu nuit portait un texte noir) */
.pm-bouton:not(.secondaire):not(.pck-second), .coach-bouton, .ent-faite, .pcv-tirer.pret, .pm-pc-notifs-nb, #pm-pub-envoyer, .pcp-plus-bouton {
    color: var(--sur-blue, #0d0f14) !important;
}
.pm-bouton, .coach-bouton, .ent-faite, #pm-pub-envoyer { border-radius: 14px !important; }
.pm-bouton:active, .coach-bouton:active, .ent-faite:active { transform: scale(.98); }

/* Champs arrondis comme les cartes */
.pm-page input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]), .pm-page select, .pm-page textarea { border-radius: 12px; }
.pm-message { border-radius: 14px; }

/* Blocs de page en cartes (formulaires, sections, filtres) */
.pm-page > section,
.pm-page > details,
.pm-page > form.pm-form,
.pm-page > div.pm-form,
.pm-page > form.pm-mat-filtres,
.pm-page > form.pm-part-filtres,
.pm-page > .training-grille > div {
    margin: 0 0 14px;
    padding: 14px;
    border: 1px solid var(--rule);
    border-radius: 20px;
    background: var(--ink2);
}
.pm-page > section > :first-child, .pm-page > form.pm-form > :first-child { margin-top: 0; }
.pm-page > section > :last-child { margin-bottom: 0; }
.pm-page > details > summary { cursor: pointer; }
.pm-page > details[open] > summary { margin-bottom: 12px; }
.pm-page > .training-grille > div { margin: 0; }

/* Listes de lignes (séances, compétitions, classements, sports) : une petite carte par ligne */
.pm-page > .pm-carnet-seance,
.pm-page > .pm-cal-ligne,
.pm-page > .pm-sports-fil,
.pm-page > .pm-defi-ligne,
.pcc > li {
    margin: 0 0 8px;
    padding: 12px 14px;
    border: 1px solid var(--rule);
    border-radius: 16px;
    background: var(--ink2);
}

/* Barres des 8 dernières semaines regroupées dans une carte */
.pm-page > .pm-carnet-semaine { margin: 0; padding: 6px 14px; border: 1px solid var(--rule); border-top: 0; border-bottom: 0; background: var(--ink2); }
.pm-page > h2 + .pm-carnet-semaine { padding-top: 12px; border-top: 1px solid var(--rule); border-radius: 20px 20px 0 0; }
.pm-page > .pm-carnet-semaine:not(:has(+ .pm-carnet-semaine)) { margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid var(--rule); border-radius: 0 0 20px 20px; }

/* Lien « Voir plus » et liens d'outils sous forme de pastille sobre */
.pm-page > a.pm-bouton.secondaire { border-radius: 999px !important; }

/* Titre en tête de carte : pas de gros filet au-dessus, la carte suffit */
.pm-page > section > .forme-titre:first-child, .pm-page > section > .titrage:first-child,
.pm-page > .training-grille > div > :first-child > .forme-titre:first-child, .pm-page > .training-grille > div > .forme-titre:first-child { padding-top: 0; border-top: 0; }

/* Pages « Ensemble » : chaque élément d'une liste (canal, groupe, annonce, question, trajet, appel à bénévoles, sondage, course) en carte */
.pm-gr-carte, .pm-qp, .pm-mat-annonce, .pm-mat-vendeur, .pm-covoit, .pm-part-annonce, .pm-ben, .pm-gr-sondage, .pm-rs-course {
    margin: 0 0 10px;
    padding: 14px;
    border: 1px solid var(--rule);
    border-radius: 18px;
    background: var(--ink2);
}
.pm-page > .pm-sports-fils + .pm-gr-carte, .pm-page > h2 + .pm-qp, .pm-page > h2 + .pm-mat-annonce { margin-top: 12px; }
/* Liens d'un canal ou d'un groupe (Discussion, Photos, Fil et agenda) en pastilles */
.pm-gr-liens { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.pm-gr-liens a, .pm-gr-liens button { display: inline-flex; align-items: center; padding: 7px 13px; border-radius: 999px; background: var(--blue-dim); color: var(--white) !important; font-size: 13.5px; font-weight: 700; text-decoration: none; }
.pm-gr-liens > :first-child { background: var(--blue); color: var(--sur-blue, #0d0f14) !important; }
/* Réponse d'un pro : encart arrondi dans la carte */
.pm-qp-reponse { margin-top: 10px; padding: 10px 12px; border-left: 0; border-radius: 12px; background: var(--blue-dim); }
/* Filtres et bouton « Poser une question » : dans une carte */
.pm-page > form.pm-champ, .pm-page > .pm-gr-filtres, .pm-page > details.pm-qp-poser { margin: 0 0 14px; padding: 14px; border: 1px solid var(--rule); border-radius: 20px; background: var(--ink2); }
/* Message « rien pour l'instant » sous l'en-tête : carte discrète */
.pm-page > .pm-page-titre + .pm-page-intro + .pm-page-intro, .pm-page > .pm-page-titre + .pm-page-intro + .pm-rs-note, .pm-page > .pm-rs-note:last-child {
    padding: 16px; border: 1px dashed var(--rule2, var(--rule)); border-radius: 18px; text-align: center;
}

/* Dans une section déjà en carte, les éléments redeviennent des lignes à filet (pas de carte dans la carte) */
.pm-page > section :is(.pm-gr-carte, .pm-qp, .pm-mat-annonce, .pm-covoit, .pm-part-annonce, .pm-ben, .pm-gr-sondage, .pm-rs-course) {
    margin: 0; padding: 12px 0 0; border: 0; border-top: 1px solid var(--rule); border-radius: 0; background: none;
}
.pm-page > section > .pm-ben-comp + :is(.pm-ben, .pm-covoit) { margin-top: 10px; }
