/* Styles globaux du site.
   Les couleurs sont définies en variables CSS. La couleur d'accent
   est injectée par le serveur via base.html.twig à partir d'APP_ACCENT_COLOR.
   Tout le thème (clair/sombre) repose sur Bootstrap 5.3 (attribut data-bs-theme).
*/

@import "_variables-fqFFN2M.css";
@import "_layout-PxUyigF.css";
@import "_forms-r1jFqCC.css";
@import "_workout-mkD-nTf.css";
@import "_home-Ez9aqga.css";
@import "_ideas-4rPM7oS.css";

/* ---------- Base ---------- */
body {
    min-height: 100vh;
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    font-family: var(--font-body);
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--font-heading);
    font-weight: 700;
    letter-spacing: 0.01em;
}

/* Titres principaux : un peu plus appuyés / sportifs */
h1, .h1 { font-weight: 800; }

a {
    color: var(--accent-text);
    text-decoration: none;
}
a:hover { text-decoration: underline; }

/* ---------- Boutons : angles droits partout, aucun arrondi ----------
   Bootstrap redéfinit le rayon pour sm/lg et les groupes : on les neutralise tous.
   Pagination et bouton burger suivent la même règle. */
.btn,
.btn-sm, .btn-group-sm > .btn,
.btn-lg, .btn-group-lg > .btn {
    --bs-btn-border-radius: 0;
}
.pagination, .pagination-sm, .pagination-lg {
    --bs-pagination-border-radius: 0;
}
.btn-close,
.navbar-toggler {
    border-radius: 0;
}
/* Les boutons faits avec un <a> ne doivent pas hériter du soulignement des liens */
.btn:hover, .btn:focus,
.page-link:hover, .page-link:focus {
    text-decoration: none;
}

.btn-accent {
    background-color: var(--accent-color);
    border-color: var(--accent-color);
    color: #000;
    font-family: var(--font-heading);
    font-weight: 700;
}
.btn-accent:hover, .btn-accent:focus {
    background-color: var(--accent-color-hover);
    border-color: var(--accent-color-hover);
    color: #000;
}

/* Bouton secondaire à la couleur du site : contour + libellé accent (assombri en
   thème clair via --accent-text), plein au survol / à l'appui. Variables Bootstrap 5.3. */
.btn-outline-accent {
    --bs-btn-color: var(--accent-text);
    --bs-btn-border-color: var(--accent-text);
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: var(--accent-color);
    --bs-btn-hover-border-color: var(--accent-color);
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: var(--accent-color-hover);
    --bs-btn-active-border-color: var(--accent-color-hover);
    --bs-btn-disabled-color: var(--accent-text);
    --bs-btn-disabled-border-color: var(--accent-text);
    font-weight: 500;
}
.btn-outline-accent:focus-visible {
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--accent-color) 35%, transparent);
}

.text-accent { color: var(--accent-text) !important; }

/* Groupes musculaires dans les listes d'exercices : couleur d'accent pour les
   distinguer des noms d'exercices (en-têtes du menu de choix, libellés, badges). */
.muscle-label { color: var(--accent-text) !important; }
.muscle-badge {
    color: var(--accent-text);
    background-color: transparent;
    border: 1px solid var(--accent-text);
}
/* <select> natifs : en-têtes de groupes en accent (navigateurs desktop ; les
   sélecteurs natifs mobiles ignorent ce style), options en couleur normale. */
select optgroup { color: var(--accent-text); }
select optgroup option { color: var(--bs-body-color); }
.border-accent { border-color: var(--accent-color) !important; }
.bg-accent { background-color: var(--accent-color) !important; color: #000; }
