/* OOYADÉ — feuille de styles du site (chargée par les mises en page publique, pro et admin)
   Couleurs de la charte : orange #D4870A, bleu nuit #1a1a2e */

/* ===== Accueil : bandeau des chiffres ===== */
.chiffres-accueil { background: linear-gradient(135deg, #1a1a2e 0%, #2a2a48 100%); }
.chiffre-carte { background: rgba(255,255,255,.04); border: 1px solid rgba(212,135,10,.45); border-radius: 14px;
                 padding: 1.25rem 1.75rem; min-width: 200px; transition: transform .2s, border-color .2s; }
.chiffre-carte:hover { transform: translateY(-3px); border-color: #D4870A; }
.chiffre-icone { width: 44px; height: 44px; border-radius: 50%; background: rgba(212,135,10,.18); color: #f0b04a;
                 display: inline-flex; align-items: center; justify-content: center; font-size: 1.35rem; margin-bottom: .5rem; }
.chiffre-valeur { font-size: 3rem; font-weight: 800; color: #fff; line-height: 1; font-variant-numeric: tabular-nums; }
.chiffre-plus { color: #f0b04a; }
.chiffre-libelle { color: #c9c9d6; font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; margin-top: .5rem; }

/* ===== Fiche : galerie (photo entière sur fond flou) ===== */
.galerie-cadre { position: relative; height: clamp(260px, 45vw, 440px); overflow: hidden; background: #1a1a2e; }
.galerie-cadre::before { content: ""; position: absolute; inset: -24px; background: var(--fond) center / cover no-repeat; filter: blur(20px) brightness(.65); }
.galerie-cadre img { position: relative; display: block; width: 100%; height: 100%; object-fit: contain; }

/* ===== Recherche : bouton des filtres sur mobile ===== */
[aria-controls="panneau-filtres"] .libelle-ouvert { display: none; }
[aria-controls="panneau-filtres"][aria-expanded="true"] .libelle-ouvert { display: inline; }
[aria-controls="panneau-filtres"][aria-expanded="true"] .libelle-ferme { display: none; }
[aria-controls="panneau-filtres"] .ti-chevron-down { transition: transform .2s; }
[aria-controls="panneau-filtres"][aria-expanded="true"] .ti-chevron-down { transform: rotate(180deg); }

/* ===== BO : paiements ===== */
#filtres-paiements .form-select-sm { min-height: calc(1.5em + .5rem + 2px); padding: .25rem 2.25rem .25rem .5rem;
                                      font-size: .875rem; border-color: var(--bs-border-color); }

/* ===== BO : statistiques ===== */
.stat-graph { position: relative; height: 240px; }
.stat-graph.petit { height: 200px; }
.entonnoir-barre { height: 34px; border-radius: 8px; background: linear-gradient(90deg, #D4870A, #e9a83d); color: #1a1a2e;
                   display: flex; align-items: center; padding: 0 12px; font-weight: 700; min-width: 3.5rem; }
.tendance { font-size: .72rem; }

/* ===== Animations : respect du réglage « réduire les animations » ===== */
@media (prefers-reduced-motion: reduce) {
    .chiffre-carte, [aria-controls="panneau-filtres"] .ti-chevron-down { transition: none; }
    .chiffre-carte:hover { transform: none; }
}

/* ===== Badges Pro / Membre (toutes les mises en page) ===== */
.badge-verified { background: #1e7a3c; color: #fff; font-size: .75rem; box-shadow: 0 1px 3px rgba(0,0,0,.3); }
.badge-premium  { background: #1a1a2e; color: #ffcf6e; font-size: .75rem; box-shadow: 0 1px 3px rgba(0,0,0,.3); }

/* ===== Liens d action (encarts Mes badges, etc.) : Tailwind remet les liens à la couleur du texte ===== */
.lien-action, .lien-action:visited { color: #9a4d00; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.lien-action:hover { color: #1a1a2e; }
.lien-action:focus-visible { outline: 2px solid #D4870A; outline-offset: 2px; border-radius: 2px; }

/* ===== En-tête : zone de recherche ===== */
.recherche-entete .form-control { background: #f7f2ea; border: 1px solid #d6c7b0; border-radius: 999px; padding-left: 1rem; }
.recherche-entete .form-control:focus { background: #fff; border-color: #D4870A; box-shadow: 0 0 0 .2rem rgba(212,135,10,.25); }
.recherche-entete button { background: #D4870A; color: #fff; border: 0; border-radius: 999px; min-width: 42px; height: 38px; }
.recherche-entete button:hover { background: #b5720a; }
.recherche-entete button:focus-visible { outline: 3px solid #1a1a2e; outline-offset: 2px; }

/* ===== Ancres : réserver la hauteur de l en-tête fixe ===== */
html { scroll-padding-top: 96px; }

/* ===== Horaires de la fiche publique (jours regroupés) ===== */
.horaires { display: grid; grid-template-columns: max-content 1fr; gap: .4rem 2rem; max-width: 32rem; margin: 0; }
.horaires dt { font-weight: 600; margin: 0; }
.horaires dd { margin: 0; color: #4a4a5a; }
.horaires .horaires-aujourdhui { color: #9a4d00; font-weight: 700; }
.horaires-compact { font-weight: 600; color: #1e7a3c; }
