/* Challenge Quinté+, thème Paddock 2.0 (jetons du thème : --carte, --or, --pelouse…) */
.lpq { display: grid; gap: 16px; margin: 0 0 1.5em; }
.lpq h2 { margin: 2px 0 4px; font-size: clamp(24px, 3.4vw, 32px); }
.lpq-libelle { font-size: 14px; color: var(--encre-3); }
.lpq-attente, .lpq-vide { margin: 0; color: var(--encre-3); }
.lpq-erreur, .lpq-message.erreur { margin: 0; color: var(--perd); }
.lpq-message { margin: 0; color: var(--encre-2); }
.lpq-message.ok { color: var(--gagne); }
.lpq .table-paddock { margin: 0; }
.lpq tr.moi td { background: var(--brun); }
.lpq-pts { font: 700 17px var(--display); color: var(--or); white-space: nowrap; }
.lpq .nums { flex-wrap: nowrap; }

/* course */
.lpq-course { display: grid; gap: 16px; }
.lpq-course-tete { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: start; gap: 12px; }
.lpq-course-tete > div { flex: 1 1 320px; min-width: 0; }
.lpq-infos { margin: 0 0 6px; color: var(--encre-2); }
.lpq-horaire { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; color: var(--encre-2); font-size: 15px; }
.lpq .etat-course.ferme { background: #3a2a1c; color: var(--perd); }
.lpq .etat-course.ferme::before { content: none; }
.lpq-nav { display: flex; gap: 8px; }
.lpq-nav .bouton:disabled { opacity: .4; cursor: default; }
.lpq-mon-prono { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; padding: 12px 14px; border-radius: 4px; background: var(--carte-2); border: 1px solid var(--trait); }
.lpq-mon-prono > div { display: flex; align-items: center; gap: 8px; }
.lpq-sous { font: 600 12px var(--texte); letter-spacing: .08em; text-transform: uppercase; color: var(--encre-3); }
.lpq-points { font: 700 18px var(--display); color: var(--or); }
.lpq-connexion { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.lpq-connexion p { margin: 0; }

/* formulaire */
.lpq-form { display: grid; gap: 14px; }
.lpq-aide { margin: 0; font-size: 14px; color: var(--encre-3); }
.lpq-groupes { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px; }
.lpq-groupe { display: grid; gap: 8px; padding: 10px 12px; border-radius: 4px; border: 1px solid var(--trait); background: var(--carte-2); }
.lpq-groupe.actif { border-color: var(--pelouse); box-shadow: inset 0 0 0 1px var(--pelouse); }
.lpq-groupe-titre { justify-self: start; padding: 4px 0; background: none; border: 0; color: var(--encre); font: 700 17px var(--display); letter-spacing: .02em; cursor: pointer; }
.lpq-groupe.actif .lpq-groupe-titre { color: var(--pelouse); }
.lpq-cases { display: flex; flex-wrap: wrap; gap: 6px; }
.lpq-case { width: 44px; height: 44px; border-radius: 4px; border: 1px dashed var(--trait); background: transparent; color: var(--encre-3); font: 600 14px var(--texte); cursor: default; }
.lpq-case.pleine { border-style: solid; border-color: var(--or); color: var(--or); background: var(--brun); font: 800 22px var(--display); cursor: pointer; }
.lpq-partants { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 8px; }
.lpq-ch { position: relative; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 10px; align-items: center; text-align: left; min-height: 58px; padding: 8px 12px; border-radius: 4px; border: 1px solid var(--trait); background: var(--carte-2); color: var(--encre); font: inherit; cursor: pointer; }
.lpq-ch b { grid-row: span 2; font: 800 24px var(--display); color: var(--or); min-width: 28px; text-align: center; }
.lpq-ch-nom { font: 700 15px var(--display); letter-spacing: .02em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding-right: 44px; }
.lpq-ch small { font-size: 12px; color: var(--encre-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lpq-ch:hover:not(:disabled) { border-color: var(--or); }
.lpq-ch[aria-pressed="true"] { background: #2c3d1f; border-color: var(--pelouse); }
.lpq-ch:disabled { opacity: .45; cursor: not-allowed; }
.lpq-ch:disabled .lpq-ch-nom { text-decoration: line-through; }
.lpq-marques { position: absolute; top: 6px; right: 8px; display: flex; gap: 3px; }
.lpq-marques i { font: 700 11px var(--texte); font-style: normal; padding: 1px 5px; border-radius: 4px; }
.lpq-marques .q { background: var(--or); color: #2a1d00; }
.lpq-marques .m { background: var(--pelouse); color: var(--fond); }
.lpq-form-pied { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.lpq-form-pied .bouton:disabled { opacity: .5; cursor: not-allowed; }

/* résultats */
.lpq-synthese { display: flex; flex-wrap: wrap; gap: 10px 28px; }
.lpq-synthese > div { display: grid; gap: 6px; }
.lpq-pronos td { white-space: nowrap; }

/* classement */
.lpq-tete { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.lpq-tete h2 { margin: 0; }
.lpq .onglet[aria-pressed="true"] { background: var(--pelouse); color: var(--fond); border-color: var(--pelouse); }
.lpq .onglet::first-letter { text-transform: uppercase; }
.lpq-classement-table { display: grid; gap: 8px; }
.lpq-rang td:first-child { font: 800 18px var(--display); color: var(--or); width: 3em; }

/* historique et règles */
.lpq-historique summary, .lpq-regles summary { cursor: pointer; list-style: none; display: flex; align-items: center; gap: 10px; }
.lpq-historique summary::before, .lpq-regles summary::before { content: '▸'; color: var(--or); transition: transform .2s; }
.lpq-historique[open] summary::before, .lpq-regles[open] summary::before { transform: rotate(90deg); }
.lpq-historique summary h2, .lpq-regles summary h2 { margin: 0; font-size: 24px; }
.lpq-historique-liste { display: grid; gap: 10px; margin-top: 12px; }
.lpq-histo { list-style: none; margin: 0; padding: 0; display: grid; }
.lpq-histo-lien { width: 100%; display: grid; grid-template-columns: 6.5em 1fr auto auto; gap: 12px; align-items: center; padding: 10px 6px; background: none; border: 0; border-bottom: 1px solid var(--trait); color: var(--encre); font: inherit; text-align: left; cursor: pointer; }
.lpq-histo-lien:hover { background: rgba(242, 185, 59, .08); }
.lpq-histo-date { color: var(--encre-3); font-variant-numeric: tabular-nums; }
.lpq-histo-course { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lpq-histo-arr { font: 700 16px var(--display); color: var(--or); }
.lpq-histo-nb { font-size: 13px; color: var(--encre-3); }
.lpq-plus { justify-self: center; }
.lpq-regles ul { margin: 12px 0 0; padding-left: 1.3em; }
.lpq-regles li { margin-bottom: 6px; }
@media (max-width: 600px) {
  .lpq-histo-lien { grid-template-columns: 5.5em 1fr; }
  .lpq-histo-arr, .lpq-histo-nb { grid-column: 2; }
}
