/* ============================================================
   Gabarit Espace coureurs — page cachée réservée aux athlètes.
   Pas de maquette : la page reprend la feuille des pages légales (sommaire, sections,
   fiches) et celle du parcours (tracé GPX), chargées avant celle-ci (inc/enqueue.php).
   Seuls les blocs propres à la page figurent ici.
   ============================================================ */
.tete-page .chapeau-espace{color:var(--papier);font-size:1.05rem;max-width:var(--mesure)}

/* Écart entre deux blocs d'une même section */
.espace article section > * + *{margin-top:18px}
.bloc-texte{max-width:var(--mesure)}
.bloc-texte p + p{margin-top:12px}
.bloc-texte :is(h3,h4){font-size:1.08rem;font-weight:800;font-stretch:106%;margin:22px 0 8px}
.bloc-texte > :first-child{margin-top:0}
.bloc-texte ul,.bloc-texte ol{margin:10px 0 0 20px}

/* Fiche : lien en fin de ligne */
.lien-ligne{font-weight:700;color:var(--bleu);white-space:nowrap}
.lien-ligne::after{content:" →"}
.lien-ligne:hover{color:var(--rouge-sombre)}

/* Lieu et boutons GPS */
.lieu{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;
  background:var(--nuit);color:var(--papier);padding:20px 22px}
.lieu .adresse b{display:block;font-size:1.15rem;font-weight:800;font-stretch:110%}
.lieu .adresse span{display:block;color:#9FB4E8;margin-top:2px}
.lieu .gps{display:flex;flex-wrap:wrap;gap:10px}
.lieu .btn-ligne{color:var(--papier);border-color:rgba(244,243,239,.45)}
.lieu .btn-ligne:hover{background:rgba(244,243,239,.12);border-color:var(--papier)}

/* Documents à télécharger */
.documents{list-style:none;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
article .documents li{margin:0;background:#fff;border:1px solid var(--trait);padding:14px;
  display:flex;flex-direction:column;gap:12px}
.documents .apercu{display:block;background:var(--papier);border:1px solid var(--trait)}
.documents .apercu img{display:block;width:100%;height:220px;object-fit:contain}
.documents .infos{flex:1}
.documents .infos b{display:block;font-weight:800;font-stretch:106%}
.documents .infos span{display:block;font-size:.92rem;color:var(--gris);margin-top:2px}
.documents small{display:block;font-size:.78rem;color:var(--gris);margin-top:4px;font-variant-numeric:tabular-nums}
.documents .btn{align-self:flex-start}

/* Images */
.images{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.images.n1{grid-template-columns:1fr}
.images.n2{grid-template-columns:repeat(2,1fr)}
.images figure{margin:0;min-width:0}
.images a{display:block;background:#fff;border:1px solid var(--trait)}
.images a:hover{border-color:var(--bleu)}
.images img{display:block;width:100%;height:auto}
.images:not(.n1) img{aspect-ratio:4/3;object-fit:cover}
.images figcaption{font-size:.82rem;color:var(--gris);margin-top:6px}

/* Liens (suivi de la course…) */
.liens{list-style:none;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
article .liens li{margin:0}
.liens a{display:block;height:100%;text-decoration:none;background:#fff;border:1px solid var(--trait);
  border-left:4px solid var(--bleu);padding:12px 14px}
.liens a:hover{border-color:var(--bleu)}
.liens b{display:block;font-weight:800}
.liens span{display:block;font-size:.9rem;color:var(--gris);margin-top:2px}
.liens small{display:block;font-size:.76rem;color:var(--bleu);margin-top:6px;overflow-wrap:anywhere}

/* Citation / mot d'ordre */
.citation{border-left:4px solid var(--rouge);padding:6px 0 6px 20px}
.citation p{font-size:clamp(1.2rem,2.4vw,1.55rem);font-weight:800;font-style:italic;font-stretch:110%;line-height:1.25}
.citation footer{margin-top:8px;font-size:.88rem;color:var(--gris)}

/* Partenaires */
.partenaires-espace{list-style:none;margin:0;display:grid;gap:12px}
article .partenaires-espace li{margin:0;display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;
  background:#fff;border:1px solid var(--trait);padding:14px}
.partenaires-espace .logo{display:grid;place-items:center;min-height:70px;font-weight:800;text-align:center}
.partenaires-espace .logo img{width:auto;height:auto;max-width:100%;max-height:90px}
.partenaires-espace b{display:block;font-weight:800;margin-bottom:4px}
.partenaires-espace p{font-size:.95rem}

/* Parcours : le bloc GPX hors de sa section d'origine */
.espace .traces{margin-top:0}

/* Formulaire de mot de passe */
.acces-protege form{max-width:520px}
.acces-protege label{display:block;font-weight:700;margin-top:14px}
.acces-protege input[type="password"]{display:block;width:100%;margin-top:6px;padding:.7em .8em;
  font:inherit;border:1px solid var(--trait);background:#fff}
.acces-protege input[type="submit"]{margin-top:12px;font:inherit;font-weight:700;padding:.72em 1.5em;border:2px solid var(--rouge);
  background:var(--rouge);color:#fff;cursor:pointer}
.acces-protege input[type="submit"]:hover{background:var(--rouge-sombre);border-color:var(--rouge-sombre)}

@media (max-width:560px){
  .images,.images.n2{grid-template-columns:1fr}
  article .partenaires-espace li{grid-template-columns:1fr}
  .partenaires-espace .logo{justify-items:start}
}
