/* ==========================================================================
   MovieSport — ms-espace-lot2.css : espace membre, lot 2 (moteur, écrans du jour et calendrier).
   Aujourd'hui en deux colonnes de cartes : Refaire la semaine, Reprise, Semaine allégée conseillée,
   Douleur signalée, Semaine passée, Pesée du jour ; calendrier mois et bascule Semaine / Mois.
   DA v3 : encre sur papier, aucun accent, statuts toujours en texte. Mobile d'abord (390 px), cibles 44 px.
   ========================================================================== */

/* ---------- Aujourd'hui : colonnes ---------- */
.ms-today-col { display: grid; gap: clamp(20px, 3vw, 40px); align-content: start; min-width: 0; }
.ms-today__actions { align-items: center; }
.ms-today__actions .ms-inline-form { margin: 0; }
.ms-today .ms-btn--sm, .ms-deload .ms-btn--sm, .ms-redo .ms-btn--sm { min-height: 44px; }
.ms-today .ms-btn, .ms-deload .ms-btn { max-width: 100%; white-space: normal; text-align: center; line-height: 1.3; }

/* Bande de la semaine (ms-member.css) : « Manquée », « Partielle » tiennent dans une case à 390 px. */
@media (max-width: 420px) {
	.ms-strip { gap: 3px; }
	.ms-strip__day { padding: 8px 1px; min-width: 0; }
	.ms-strip__s { font-size: .6rem; overflow-wrap: anywhere; hyphens: auto; }
}

/* ---------- Reprise et « Refaire la semaine » ---------- */
.ms-reprise__note { padding: 10px 14px; border-left: 2px solid var(--fg); background: rgb(255 255 255 / .3); }
.ms-redo { display: grid; gap: 10px; justify-items: start; padding-top: 14px; border-top: 1px solid var(--line); }

/* ---------- Semaine allégée conseillée ---------- */
.ms-deload { border-color: var(--fg); }
.ms-deload .ms-today__actions { display: flex; flex-wrap: wrap; gap: 10px; }

/* ---------- Douleur signalée (Aujourd'hui et séance) ---------- */
.ms-pain { border-left: 2px solid var(--fg); scroll-margin-top: calc(var(--ms-hh, 72px) + 16px); }
.ms-session-head + .ms-pain { margin-top: 16px; }
.ms-pain__list { display: grid; gap: 8px; padding-left: 1.1em; }
.ms-pain__warn { font-weight: 600; }

/* ---------- Semaine passée ---------- */
.ms-review__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.ms-review__facts > div { display: grid; gap: 4px; padding: 12px 12px 12px 0; border-bottom: 1px solid var(--line); min-width: 0; }
.ms-review__facts dt { font-size: .62rem; letter-spacing: .16em; color: var(--muted); }
.ms-review__facts dd { font-family: var(--ms-f-serif); font-size: 1.5rem; line-height: 1.1; font-variant-numeric: tabular-nums; }

/* ---------- Pesée du jour (le formulaire vient du module corps) ---------- */
.ms-weigh-card { gap: 12px; }

/* ---------- Calendrier : bascule Semaine / Mois ---------- */
.ms-calview { display: inline-flex; margin-bottom: 18px; padding: 3px; border: 1px solid var(--line); border-radius: 999px; }
.ms-calview__tab { display: inline-flex; align-items: center; justify-content: center; min-width: 96px; min-height: 44px; padding: 0 18px; border-radius: 999px; font-family: var(--ms-f-mono); font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }
.ms-calview__tab:hover { color: var(--fg); }
.ms-calview__tab[aria-current="page"] { background: var(--fg); color: var(--bg); }
.ms-calview__tab:focus-visible { outline: 2px solid var(--fg); outline-offset: 2px; }
.ms-calview__note { margin-bottom: 18px; }

/* ---------- Calendrier mois ---------- */
.ms-month__title { font-size: .78rem; font-weight: 400; letter-spacing: .18em; text-transform: uppercase; }
.ms-month__sum { margin-bottom: 14px; font-size: .92rem; color: var(--muted); }
.ms-month__head, .ms-month { list-style: none; display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.ms-month__head { margin-bottom: 6px; }
.ms-month__head li { padding: 0 8px; font-family: var(--ms-f-mono); font-size: .62rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.ms-month__day { display: grid; align-content: start; gap: 6px; min-width: 0; min-height: 7.5rem; padding: 8px; border: 1px solid var(--line); }
.ms-month__day.is-out { opacity: .45; border-style: dashed; }
.ms-month__day.is-today { outline: 1.5px solid var(--fg); outline-offset: 2px; }
.ms-month__date { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; font-family: var(--ms-f-mono); font-size: .66rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.ms-month__num { font-family: var(--ms-f-serif); font-size: 1.15rem; letter-spacing: 0; color: var(--fg); }
/* Jour de la semaine : lu par les lecteurs d'écran, visible seulement en liste (mobile) ; l'en-tête le porte sur grand écran. */
.ms-month__dow { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ms-month__now { font-size: .58rem; color: var(--fg); }
.ms-month__items { display: grid; gap: 8px; min-width: 0; }
.ms-month__item { display: grid; gap: 2px; font-size: .82rem; line-height: 1.25; overflow-wrap: anywhere; }
.ms-month__item a { font-weight: 500; }
.ms-month__rest { font-size: .82rem; color: var(--muted); }
.ms-month__foot { margin-top: 14px; }

/* Mobile : liste des jours d'entraînement du mois (les jours de repos et hors mois sont masqués). */
@media (max-width: 760px) {
	.ms-month__head { display: none; }
	.ms-month { grid-template-columns: 1fr; gap: 0; border-top: 1px solid var(--line); }
	.ms-month__day { display: flex; align-items: flex-start; gap: 14px; min-height: 0; padding: 12px 0; border: 0; border-bottom: 1px solid var(--line); }
	.ms-month__day:not(.has-items):not(.is-today), .ms-month__day.is-out { display: none; }
	.ms-month__day.is-today { outline: 0; }
	.ms-month__date { flex: none; width: 5.2rem; flex-direction: column; align-items: flex-start; gap: 0; }
	.ms-month__dow { position: static; width: auto; height: auto; overflow: visible; clip: auto; }
	.ms-month__items, .ms-month__rest { flex: 1; }
	.ms-month__item { font-size: .95rem; }
	.ms-month__item a { display: inline-flex; align-items: center; min-height: 44px; }
	.ms-cal-nav .ms-month__title { order: -1; width: 100%; }
}
