@import '_content/Blazicons/Blazicons.886t4n1lry.bundle.scp.css';

/* /Components/Layout/LegalLayout.razor.rz.scp.css */
.lg-page[b-atnj9hjgut] {
    min-height: 100vh;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding: 20px 16px 28px;
    color: var(--esb-text-primary);
}

/* ── En-tête ─────────────────────────────────────────── */
.lg-entete[b-atnj9hjgut] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px 16px;
    padding-bottom: 16px;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.lg-marque[b-atnj9hjgut] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

/* Le logo est souvent sombre sur fond transparent : posé sur une pastille claire, il reste visible
   dans les deux thèmes. */
.lg-pastille[b-atnj9hjgut] {
    flex: none;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    box-shadow: var(--esb-shadow);
}

.lg-logo[b-atnj9hjgut] {
    width: 30px;
    height: 30px;
    object-fit: contain;
}

.lg-marque-texte[b-atnj9hjgut] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.1;
}

.lg-sigle[b-atnj9hjgut] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.25rem;
    letter-spacing: 0.04em;
    overflow-x: clip;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lg-produit[b-atnj9hjgut] {
    font-size: 0.62rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.lg-retour[b-atnj9hjgut] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--esb-primary);
    text-decoration: none;
}

.lg-retour:hover[b-atnj9hjgut] {
    text-decoration: underline;
}

/* ── Document ────────────────────────────────────────── */
/* Le texte est rendu par les pages et par DocumentLegal : ::deep pour l'atteindre depuis ici. */
.lg-contenu[b-atnj9hjgut] {
    flex: 1;
    min-width: 0;
    font-size: 0.92rem;
    line-height: 1.65;
}

.lg-contenu[b-atnj9hjgut]  .lg-titre {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 2rem;
    line-height: 1.1;
    margin: 18px 0 4px;
}

.lg-contenu[b-atnj9hjgut]  .lg-version {
    font-size: 0.78rem;
    color: var(--esb-text-disabled);
    margin-bottom: 16px;
}

.lg-contenu[b-atnj9hjgut]  .lg-provisoire {
    margin-bottom: 20px;
}

.lg-contenu[b-atnj9hjgut]  h2 {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.3rem;
    margin: 28px 0 8px;
}

.lg-contenu[b-atnj9hjgut]  p,
.lg-contenu[b-atnj9hjgut]  ul {
    margin: 0 0 10px;
}

.lg-contenu[b-atnj9hjgut]  ul {
    padding-left: 20px;
}

.lg-contenu[b-atnj9hjgut]  li {
    margin-bottom: 4px;
}

.lg-contenu[b-atnj9hjgut]  a {
    color: var(--esb-primary);
    overflow-wrap: anywhere;
}

/* Un tableau large défile seul plutôt que d'élargir la page sur téléphone. */
.lg-contenu[b-atnj9hjgut]  .lg-tableau {
    overflow-x: auto;
    margin: 6px 0 14px;
    border: 1px solid var(--esb-lines-default);
    border-radius: 12px;
}

.lg-contenu[b-atnj9hjgut]  table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
    line-height: 1.5;
}

.lg-contenu[b-atnj9hjgut]  th,
.lg-contenu[b-atnj9hjgut]  td {
    padding: 8px 12px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--esb-lines-default);
}

.lg-contenu[b-atnj9hjgut]  tr:last-child td {
    border-bottom: none;
}

.lg-contenu[b-atnj9hjgut]  th {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    background: var(--esb-background-grey);
}

.lg-contenu[b-atnj9hjgut]  code {
    font-size: 0.85em;
    overflow-wrap: anywhere;
}

/* Passages à faire trancher par le juriste, et informations encore à fournir. */
.lg-contenu[b-atnj9hjgut]  .lg-a-valider {
    padding: 1px 5px;
    border-radius: 5px;
    background: rgba(var(--esb-warning-rgb), 0.18);
    color: var(--esb-warning-darken);
    font-weight: 600;
}

.lg-contenu[b-atnj9hjgut]  .lg-a-completer {
    padding: 1px 5px;
    border-radius: 5px;
    border: 1px dashed rgba(var(--esb-error-rgb), 0.6);
    color: var(--esb-error);
    font-weight: 600;
}

/* ── Pied ────────────────────────────────────────────── */
.lg-pied[b-atnj9hjgut] {
    margin-top: 32px;
    padding-top: 14px;
    border-top: 1px solid var(--esb-lines-default);
    font-size: 0.8rem;
    color: var(--esb-text-secondary);
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Layout styles moved to wwwroot/app.css (global) */
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* All nav styling is handled globally in app.css for the custom sidebar context */
/* /Components/Layout/NotificationBell.razor.rz.scp.css */
.notif-panel[b-tjfkzhb5ds] {
    position: fixed;
    z-index: 1250;
    left: 76px;
    bottom: 16px;
    width: min(380px, calc(100vw - 32px));
    display: flex;
    flex-direction: column;
    padding: 6px;
    border-radius: 16px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: 0 12px 34px rgba(var(--esb-primary-rgb), 0.30);
}

@media (max-width: 640px) {
    .notif-panel[b-tjfkzhb5ds] {
        left: auto;
        right: 12px;
        bottom: auto;
        top: 64px;
    }
}

.notif-head[b-tjfkzhb5ds] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 12px 14px 8px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.notif-title[b-tjfkzhb5ds] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.3rem;
    letter-spacing: -0.25px;
}

.notif-filters[b-tjfkzhb5ds] {
    display: flex;
    gap: 6px;
    padding: 10px 14px;
    overflow-x: auto;
}

.notif-pill[b-tjfkzhb5ds] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-secondary);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.notif-pill:hover[b-tjfkzhb5ds] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.notif-pill:active[b-tjfkzhb5ds] {
    transform: scale(0.96);
}

.notif-pill--active[b-tjfkzhb5ds] {
    background: rgba(var(--esb-primary-rgb), 0.12);
    border-color: var(--esb-primary);
    color: var(--esb-primary);
}

.notif-pill-count[b-tjfkzhb5ds] {
    border-radius: 5px;
    font-size: 0.62rem;
    font-weight: 700;
    padding: 1px 5px;
    background: rgba(var(--esb-primary-rgb), 0.14);
    color: var(--esb-primary);
}

.notif-pill-count--warn[b-tjfkzhb5ds] {
    background: rgba(var(--esb-warning-rgb), 0.18);
    color: var(--esb-warning-darken);
}

.notif-list[b-tjfkzhb5ds] {
    max-height: 340px;
    overflow-y: auto;
    padding: 0 10px 6px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.notif-day-label[b-tjfkzhb5ds] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 4px 4px;
}

.notif-day-label > span:first-child[b-tjfkzhb5ds] {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.notif-day-rule[b-tjfkzhb5ds] {
    flex: 1;
    height: 1px;
    background: var(--esb-lines-default);
}

.notif-card[b-tjfkzhb5ds] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border-radius: 12px;
    padding: 9px 8px;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 0.15s;
}

.notif-card:hover[b-tjfkzhb5ds] {
    background: var(--esb-action-hover);
}

.notif-card:active[b-tjfkzhb5ds] {
    background: rgba(var(--esb-primary-rgb), 0.14);
}

.notif-card--unread[b-tjfkzhb5ds] {
    background: rgba(var(--esb-primary-rgb), 0.06);
}

.notif-card--pending[b-tjfkzhb5ds] {
    background: rgba(var(--esb-primary-rgb), 0.08);
    border-color: rgba(var(--esb-primary-rgb), 0.30);
}

.notif-icon[b-tjfkzhb5ds] {
    flex: none;
    width: 30px;
    height: 30px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.notif-icon--primary[b-tjfkzhb5ds] {
    background: rgba(var(--esb-primary-rgb), 0.14);
    border: 1px solid rgba(var(--esb-primary-rgb), 0.32);
    color: var(--esb-primary);
}

.notif-icon--secondary[b-tjfkzhb5ds] {
    background: rgba(var(--esb-secondary-rgb), 0.14);
    border: 1px solid rgba(var(--esb-secondary-rgb), 0.32);
    color: var(--esb-secondary);
}

.notif-icon--info[b-tjfkzhb5ds] {
    background: rgba(var(--esb-info-rgb), 0.14);
    border: 1px solid rgba(var(--esb-info-rgb), 0.32);
    color: var(--esb-info);
}

.notif-icon[b-tjfkzhb5ds]  svg {
    width: 16px;
    height: 16px;
}

.notif-body[b-tjfkzhb5ds] {
    flex: 1;
    min-width: 0;
}

.notif-row-top[b-tjfkzhb5ds] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.notif-msg[b-tjfkzhb5ds] {
    flex: 1;
    min-width: 0;
    font-size: 0.8rem;
    line-height: 1.35;
    font-weight: 500;
}

.notif-msg--unread[b-tjfkzhb5ds] {
    font-weight: 700;
}

.notif-time[b-tjfkzhb5ds] {
    flex: none;
    font-size: 0.65rem;
    color: var(--esb-text-secondary);
    font-variant-numeric: tabular-nums;
}

.notif-actions[b-tjfkzhb5ds] {
    display: flex;
    gap: 8px;
    margin-top: 8px;
}

.notif-dot[b-tjfkzhb5ds] {
    flex: none;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--esb-primary);
    margin-top: 5px;
}

.notif-empty[b-tjfkzhb5ds] {
    padding: 28px 16px;
    text-align: center;
}

[b-tjfkzhb5ds] .notif-empty-icon {
    font-size: 2rem;
    opacity: 0.35;
}

.notif-empty-title[b-tjfkzhb5ds] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--esb-text-secondary);
    margin-top: 6px;
}

.notif-empty-note[b-tjfkzhb5ds] {
    font-size: 0.72rem;
    color: var(--esb-text-disabled);
    margin-top: 4px;
    line-height: 1.4;
}

.notif-footer[b-tjfkzhb5ds] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px 12px;
    border-top: 1px solid var(--esb-lines-default);
}

.notif-footnote[b-tjfkzhb5ds] {
    flex: 1;
    min-width: 0;
    font-size: 0.68rem;
    color: var(--esb-text-disabled);
    line-height: 1.4;
}

.notif-push[b-tjfkzhb5ds] {
    padding: 10px 14px;
    border-top: 1px solid var(--esb-lines-default);
}

.notif-push-hint[b-tjfkzhb5ds] {
    font-size: .8rem;
    line-height: 1.45;
    color: var(--esb-text-secondary);
}
/* /Components/Pages/Admin/AuditTrail.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.aud-topbar[b-yzc1lqkknk] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.aud-topbar-main[b-yzc1lqkknk] {
    flex: 1;
    min-width: 220px;
}

.aud-topbar-sub[b-yzc1lqkknk] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

[b-yzc1lqkknk] .aud-search {
    flex: none;
    width: 264px;
}

[b-yzc1lqkknk] .aud-export-btn {
    flex: none;
}

/* ── KPI cards ───────────────────────────────────────── */
.aud-kpi-row[b-yzc1lqkknk] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.aud-kpi[b-yzc1lqkknk] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    flex: 1;
    min-width: 160px;
    border-radius: 16px;
    padding: 14px 16px;
}

.aud-kpi-value[b-yzc1lqkknk] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.aud-kpi-value--warn[b-yzc1lqkknk] {
    color: var(--esb-error);
}

.aud-kpi-label[b-yzc1lqkknk] {
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 4px;
}

.aud-kpi-hint[b-yzc1lqkknk] {
    font-size: 11px;
    color: var(--esb-text-disabled);
    margin-top: 5px;
}

.aud-kpi-hint--warn[b-yzc1lqkknk] {
    color: var(--esb-error);
}

/* ── Layout principal + aside ───────────────────────────── */
.aud-layout[b-yzc1lqkknk] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 20px;
    align-items: start;
}

@media (max-width: 1160px) {
    .aud-layout[b-yzc1lqkknk] {
        grid-template-columns: minmax(0, 1fr);
    }
}

.aud-main[b-yzc1lqkknk] {
    min-width: 0;
}

.aud-aside[b-yzc1lqkknk] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Entête de liste + filtres entité ───────────────────── */
.aud-main-head[b-yzc1lqkknk] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding: 13px 20px 12px;
}

.aud-count-label[b-yzc1lqkknk] {
    flex: 1;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.aud-entity-filters[b-yzc1lqkknk] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

/* ── Liste groupée par jour ──────────────────────────────── */
.aud-list[b-yzc1lqkknk] {
    padding: 0 20px 12px;
}

.aud-day-header[b-yzc1lqkknk] {
    display: flex;
    align-items: baseline;
    gap: 9px;
    padding: 9px 0 6px;
    border-top: 1px solid var(--esb-lines-default);
}

.aud-day-header:first-child[b-yzc1lqkknk] {
    border-top: none;
}

.aud-day-label[b-yzc1lqkknk] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 18px;
    letter-spacing: -0.2px;
}

.aud-day-count[b-yzc1lqkknk] {
    flex: 1;
    font-size: 11.5px;
    color: var(--esb-text-disabled);
}

.aud-row[b-yzc1lqkknk] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 9px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.aud-row:last-child[b-yzc1lqkknk] {
    border-bottom: none;
}

.aud-row-time[b-yzc1lqkknk] {
    flex: none;
    width: 44px;
    font-size: 12px;
    color: var(--esb-text-disabled);
    font-variant-numeric: tabular-nums;
}

.aud-row-user[b-yzc1lqkknk] {
    flex: none;
    width: 160px;
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding-right: 8px;
    box-sizing: border-box;
}

[b-yzc1lqkknk] .aud-row-avatar {
    flex: none;
    width: 24px;
    height: 24px;
    font-size: 0.7rem;
}

.aud-row-username[b-yzc1lqkknk] {
    flex: 1;
    min-width: 0;
    font-size: 12.5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aud-dot[b-yzc1lqkknk] {
    flex: none;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    border-width: 2px;
    border-style: solid;
    box-sizing: border-box;
}

.aud-row-action[b-yzc1lqkknk] {
    flex: 1;
    min-width: 0;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aud-row-entity[b-yzc1lqkknk] {
    flex: none;
    width: 150px;
    text-align: right;
}

/* ── État vide ───────────────────────────────────────────── */
.aud-empty[b-yzc1lqkknk] {
    padding: 34px 20px;
    text-align: center;
}

.aud-empty-title[b-yzc1lqkknk] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 19px;
    color: var(--esb-text-secondary);
}

.aud-empty-hint[b-yzc1lqkknk] {
    font-size: 12px;
    color: var(--esb-text-disabled);
    margin-top: 5px;
}

/* ── Aside : Acteurs / Actions sensibles / rétention ────── */
.aud-aside-card[b-yzc1lqkknk] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
}

.aud-aside-title[b-yzc1lqkknk] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-bottom: 9px;
}

.aud-actor-row[b-yzc1lqkknk] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid var(--esb-lines-default);
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.15s;
}

.aud-actor-row:hover[b-yzc1lqkknk] {
    background: var(--esb-action-hover);
}

.aud-actor-row:last-child[b-yzc1lqkknk] {
    border-bottom: none;
}

[b-yzc1lqkknk] .aud-actor-avatar {
    flex: none;
    width: 28px;
    height: 28px;
    font-size: 0.8rem;
}

.aud-actor-main[b-yzc1lqkknk] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.aud-actor-name[b-yzc1lqkknk] {
    font-size: 12.5px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aud-actor-note[b-yzc1lqkknk] {
    font-size: 10.5px;
    color: var(--esb-text-disabled);
    margin-top: 1px;
}

.aud-actor-bar-wrap[b-yzc1lqkknk] {
    flex: none;
    width: 44px;
    height: 5px;
    border-radius: 3px;
    background: rgba(var(--esb-primary-rgb), 0.12);
    overflow: hidden;
}

.aud-actor-bar[b-yzc1lqkknk] {
    display: block;
    height: 100%;
    border-radius: 3px;
    background: var(--esb-primary);
}

.aud-actor-count[b-yzc1lqkknk] {
    flex: none;
    min-width: 22px;
    text-align: right;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 15px;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.aud-sensitive-row[b-yzc1lqkknk] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 9px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.aud-sensitive-row:last-child[b-yzc1lqkknk] {
    border-bottom: none;
}

.aud-sensitive-dot[b-yzc1lqkknk] {
    flex: none;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--esb-error);
    margin-top: 5px;
}

.aud-sensitive-main[b-yzc1lqkknk] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.aud-sensitive-action[b-yzc1lqkknk] {
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.35;
}

.aud-sensitive-meta[b-yzc1lqkknk] {
    font-size: 10.5px;
    color: var(--esb-text-disabled);
    margin-top: 2px;
}

.aud-retention-note[b-yzc1lqkknk] {
    padding: 13px 15px;
    border-radius: 16px;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
    font-size: 11.5px;
    color: var(--esb-text-disabled);
    line-height: 1.5;
}
/* /Components/Pages/Admin/Configuration.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.cfg-topbar[b-97sxopy8e9] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

/* Tant que des modifications attendent, l'en-tête et sa barre « Non enregistré » restent en haut :
   la section Club est loin sous la ligne de flottaison, et « Enregistrer » sortait de l'écran.
   Le halo de la couleur du fond masque ce qui défile dessous sans décaler la mise en page
   (une marge intérieure ajoutée au premier caractère saisi ferait sauter la page). */
.cfg-topbar--sticky[b-97sxopy8e9] {
    position: sticky;
    top: 12px;
    z-index: 20;
    background: var(--esb-background);
    box-shadow: 0 0 0 12px var(--esb-background);
}

.cfg-topbar-main[b-97sxopy8e9] {
    flex: 1;
    min-width: 220px;
}

.cfg-topbar-sub[b-97sxopy8e9] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.cfg-dirty-bar[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 12px;
    background: rgba(var(--esb-warning-rgb), 0.12);
    border: 1px solid rgba(var(--esb-warning-rgb), 0.35);
}

.cfg-dirty-label[b-97sxopy8e9] {
    font-size: 12px;
    font-weight: 600;
    color: var(--esb-warning-darken);
}

/* ── Layout principal ────────────────────────────────── */
.cfg-grid[b-97sxopy8e9] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.cfg-aside[b-97sxopy8e9] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Section Club ────────────────────────────────────── */
.cfg-section-head[b-97sxopy8e9] {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px 12px;
    margin: 28px 0 12px;
}

.cfg-section-title[b-97sxopy8e9] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 22px;
    margin: 0;
}

.cfg-section-note[b-97sxopy8e9] {
    font-size: 12px;
    color: var(--esb-text-secondary);
}

/* ── Cartes ──────────────────────────────────────────── */
.cfg-card[b-97sxopy8e9] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 18px 20px;
}

.cfg-card--danger[b-97sxopy8e9] {
    background: rgba(var(--esb-error-rgb), 0.05);
    border: 1px solid rgba(var(--esb-error-rgb), 0.3);
}

.cfg-card-head[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.cfg-card-icon[b-97sxopy8e9] {
    flex: none;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--esb-background-grey);
    color: var(--esb-text-secondary);
}

.cfg-card-icon svg[b-97sxopy8e9] {
    width: 19px;
    height: 19px;
    stroke: currentColor;
    stroke-width: 1.75;
    fill: none;
}

.cfg-card-icon--ok[b-97sxopy8e9] {
    background: rgba(var(--esb-success-rgb), 0.14);
    color: var(--esb-success);
}

.cfg-card-icon--danger[b-97sxopy8e9] {
    background: rgba(var(--esb-error-rgb), 0.14);
    color: var(--esb-error);
}

.cfg-card-head-text[b-97sxopy8e9] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.cfg-card-title[b-97sxopy8e9] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 17px;
}

.cfg-card-note[b-97sxopy8e9] {
    font-size: 11.5px;
    color: var(--esb-text-disabled);
    margin-top: 1px;
}

/* ── Champs ──────────────────────────────────────────── */
.cfg-field-grid[b-97sxopy8e9] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 14px;
}

.cfg-field--wide[b-97sxopy8e9] {
    grid-column: 1 / -1;
}

.cfg-field-label-row[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 3px;
}

.cfg-field-label[b-97sxopy8e9] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.cfg-field-badge[b-97sxopy8e9] {
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 1px 6px;
    border-radius: 6px;
    background: rgba(var(--esb-warning-rgb), 0.18);
    color: var(--esb-warning-darken);
}

.cfg-field-hint[b-97sxopy8e9] {
    font-size: 10.5px;
    color: var(--esb-text-disabled);
    margin-top: 2px;
}


/* Valeur dérivée d'un autre réglage : signalée en bleu, pas en orange — rien n'est « modifié » */
.cfg-field-badge--auto[b-97sxopy8e9] {
    background: rgba(var(--esb-info-rgb), 0.18);
    color: var(--esb-info);
}

.cfg-field--changed[b-97sxopy8e9] {
    padding-left: 8px;
    border-left: 2px solid rgba(var(--esb-warning-rgb), 0.6);
}

/* ── Rangée TLS/SSL ──────────────────────────────────── */
.cfg-ssl-row[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px;
    border-radius: 12px;
    margin-bottom: 14px;
    border: 1px solid transparent;
}

.cfg-ssl-row--on[b-97sxopy8e9] {
    background: rgba(var(--esb-success-rgb), 0.08);
    border-color: rgba(var(--esb-success-rgb), 0.25);
}

.cfg-ssl-row--off[b-97sxopy8e9] {
    background: rgba(var(--esb-error-rgb), 0.08);
    border-color: rgba(var(--esb-error-rgb), 0.3);
}

.cfg-ssl-text[b-97sxopy8e9] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.cfg-ssl-title[b-97sxopy8e9] {
    font-size: 13px;
    font-weight: 600;
}

.cfg-ssl-hint[b-97sxopy8e9] {
    font-size: 11px;
    color: var(--esb-text-disabled);
    margin-top: 1px;
}

/* ── Actions et résultats de test ────────────────────── */
.cfg-action-row[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.cfg-test-result[b-97sxopy8e9] {
    font-size: 12.5px;
    font-weight: 500;
}

.cfg-test-result--ok[b-97sxopy8e9] {
    color: var(--esb-success);
}

.cfg-test-result--ko[b-97sxopy8e9] {
    color: var(--esb-error);
}

.cfg-footnote[b-97sxopy8e9] {
    font-size: 11px;
    color: var(--esb-text-disabled);
    line-height: 1.5;
    margin-top: 12px;
}

.cfg-empty-hint[b-97sxopy8e9] {
    font-size: 12.5px;
    color: var(--esb-text-secondary);
    line-height: 1.5;
    margin-bottom: 14px;
}

.cfg-empty-hint--danger[b-97sxopy8e9] {
    color: var(--esb-error);
}

/* ── Clé publique VAPID ──────────────────────────────── */
.cfg-key-row[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 10px;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
}

.cfg-key-value[b-97sxopy8e9] {
    flex: 1;
    min-width: 0;
    font-family: monospace;
    font-size: 11px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Logo du club ────────────────────────────────────── */
.cfg-logo-row[b-97sxopy8e9] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

/* Sur le dégradé de la barre latérale, où le logo sera vu le plus souvent */
.cfg-logo-apercu[b-97sxopy8e9] {
    flex: none;
    width: 64px;
    height: 64px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(160deg, var(--esb-brand-deep) 0%, var(--esb-brand) 55%, var(--esb-brand-bright) 100%);
}

.cfg-logo-img[b-97sxopy8e9] {
    width: 46px;
    height: 46px;
    object-fit: contain;
}

.cfg-logo-actions[b-97sxopy8e9] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cfg-logo-envoi[b-97sxopy8e9] {
    position: relative;
    cursor: pointer;
}

.cfg-logo-envoi--off[b-97sxopy8e9] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* InputFile est un composant : sa classe n'a pas l'attribut de portée, d'où ::deep */
[b-97sxopy8e9] .cfg-logo-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

/* ── Couleur du club ─────────────────────────────────── */
.cfg-couleur-row[b-97sxopy8e9] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.cfg-couleur-choix[b-97sxopy8e9] {
    flex: none;
    width: 44px;
    height: 36px;
    padding: 2px;
    border-radius: 10px;
    border: 1px solid var(--esb-lines-default);
    background: var(--esb-surface);
    cursor: pointer;
}

.cfg-club-couleur[b-97sxopy8e9] {
    flex: 1;
    min-width: 0;
    max-width: 130px;
    font-family: monospace;
    text-transform: uppercase;
}

.cfg-couleur-apercus[b-97sxopy8e9] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 14px 0;
}

/* Une miniature de l'écran : rail au dégradé, page au fond du thème, bouton principal */
.cfg-couleur-apercu[b-97sxopy8e9] {
    display: flex;
    min-height: 74px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--esb-lines-default);
    background: var(--ap-fond);
}

.cfg-couleur-barre[b-97sxopy8e9] {
    flex: none;
    width: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    background: var(--ap-barre);
    color: #fff;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 13px;
    letter-spacing: 0.05em;
    overflow-x: clip;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cfg-couleur-corps[b-97sxopy8e9] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 6px;
    padding: 8px 10px;
}

.cfg-couleur-texte[b-97sxopy8e9] {
    font-size: 11.5px;
    font-weight: 600;
    color: var(--ap-texte);
}

.cfg-couleur-bouton[b-97sxopy8e9] {
    padding: 3px 9px;
    border-radius: 7px;
    background: var(--ap-bouton);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
}

.cfg-field-error[b-97sxopy8e9] {
    font-size: 11.5px;
    color: var(--esb-error);
}

.cfg-field-warn[b-97sxopy8e9] {
    font-size: 11.5px;
    color: var(--esb-warning-darken);
}

/* Valeur dérivée affichée en texte courant (nom de l'application), pas en clé technique */
.cfg-key-value--texte[b-97sxopy8e9] {
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
}

.cfg-copy-btn[b-97sxopy8e9] {
    flex: none;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: var(--esb-primary);
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, transform 0.1s;
}

.cfg-copy-btn:hover[b-97sxopy8e9] {
    background: rgba(var(--esb-primary-rgb), 0.08);
}

.cfg-copy-btn:active[b-97sxopy8e9] {
    transform: scale(0.94);
}

/* ── Carte "Ce qui passe par ces canaux" ─────────────── */
.cfg-channel-row[b-97sxopy8e9] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 9px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.cfg-channel-row:last-child[b-97sxopy8e9] {
    border-bottom: none;
}

.cfg-channel-text[b-97sxopy8e9] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.cfg-channel-title[b-97sxopy8e9] {
    font-size: 12.5px;
    font-weight: 600;
}

.cfg-channel-note[b-97sxopy8e9] {
    font-size: 11px;
    color: var(--esb-text-disabled);
    line-height: 1.4;
    margin-top: 1px;
}

/* ── Responsive (en fin de fichier : un @media n'ajoute aucune spécificité) ── */
@media (max-width: 1160px) {
    .cfg-grid[b-97sxopy8e9] {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 640px) {
    /* En demi-colonne sur téléphone, le nom de l'application s'arrêtait en « ASVEL Team Mana… »
       et son étiquette passait sur trois lignes. */
    .cfg-field--wide-mobile[b-97sxopy8e9] {
        grid-column: 1 / -1;
    }
}
/* /Components/Pages/Admin/Dialogs/ResetPasswordDialog.razor.rz.scp.css */
.rpd-strength-row[b-wz7kujfszj] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 6px;
}

.rpd-strength-label[b-wz7kujfszj] {
    flex: 1;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.rpd-strength-value[b-wz7kujfszj] {
    font-size: 0.78rem;
    font-weight: 700;
}

.rpd-strength-bars[b-wz7kujfszj] {
    display: flex;
    gap: 4px;
    margin-top: 8px;
}

.rpd-strength-bar[b-wz7kujfszj] {
    flex: 1;
    height: 5px;
    border-radius: 3px;
}

.rpd-rules[b-wz7kujfszj] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-top: 11px;
}

.rpd-rule[b-wz7kujfszj] {
    display: flex;
    align-items: center;
    gap: 7px;
}

.rpd-rule-dot[b-wz7kujfszj] {
    flex: none;
    width: 6px;
    height: 6px;
    border-radius: 50%;
}

.rpd-rule-label[b-wz7kujfszj] {
    font-size: 0.72rem;
    color: var(--esb-text-disabled);
}

.rpd-rule-label--ok[b-wz7kujfszj] {
    color: var(--esb-text-secondary);
    font-weight: 600;
}
/* /Components/Pages/Admin/Dialogs/UserFormDialog.razor.rz.scp.css */
.ufd-role-label[b-9134dju93l] {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-bottom: 9px;
}

.ufd-role-cards[b-9134dju93l] {
    display: flex;
    gap: 9px;
}

.ufd-role-card[b-9134dju93l] {
    display: block;
    flex: 1;
    min-width: 0;
    text-align: left;
    font-family: inherit;
    min-height: 52px;
    padding: 8px 13px;
    border-radius: 13px;
    border: 1px solid var(--esb-lines-default);
    background: transparent;
    color: var(--esb-text-secondary);
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.ufd-role-card:hover[b-9134dju93l] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.ufd-role-card:active[b-9134dju93l] {
    transform: scale(0.98);
}

.ufd-role-card--active[b-9134dju93l] {
    border-color: var(--esb-primary);
    background: rgba(var(--esb-primary-rgb), 0.08);
    color: var(--esb-primary);
}

.ufd-role-card-title[b-9134dju93l] {
    display: block;
    font-weight: 700;
    font-size: 0.82rem;
}

.ufd-role-card-note[b-9134dju93l] {
    display: block;
    font-size: 0.66rem;
    opacity: 0.8;
    margin-top: 2px;
}
/* /Components/Pages/Admin/Utilisateurs.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.adm-topbar[b-efl8qjm5lb] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.adm-topbar-main[b-efl8qjm5lb] {
    flex: 1;
    min-width: 220px;
}

.adm-topbar-sub[b-efl8qjm5lb] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

[b-efl8qjm5lb] .adm-search {
    flex: none;
    width: 264px;
}

[b-efl8qjm5lb] .adm-new-btn {
    flex: none;
}

/* ── KPI cards ───────────────────────────────────────── */
.adm-kpi-row[b-efl8qjm5lb] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.adm-kpi[b-efl8qjm5lb] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    flex: 1;
    min-width: 160px;
    border-radius: 16px;
    padding: 14px 16px;
}

.adm-kpi-value[b-efl8qjm5lb] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.adm-kpi-value--warn[b-efl8qjm5lb] {
    color: var(--esb-warning-darken);
}

.adm-kpi-label[b-efl8qjm5lb] {
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 4px;
}

.adm-kpi-hint[b-efl8qjm5lb] {
    font-size: 11px;
    color: var(--esb-text-disabled);
    margin-top: 5px;
}

.adm-kpi-hint--warn[b-efl8qjm5lb] {
    color: var(--esb-warning-darken);
}

/* ── Filtres rôle ────────────────────────────────────── */
.adm-role-filters[b-efl8qjm5lb] {
    display: flex;
    gap: 6px;
    padding: 12px 20px;
}

/* ── Layout principal + aside ───────────────────────────── */
.adm-layout[b-efl8qjm5lb] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 322px;
    gap: 20px;
    align-items: start;
}

/* Voile de fond : uniquement sous le seuil mobile. */
.adm-backdrop[b-efl8qjm5lb] {
    display: none;
}

.adm-main[b-efl8qjm5lb] {
    min-width: 0;
}

.adm-aside[b-efl8qjm5lb] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.adm-row--selected[b-efl8qjm5lb] {
    background: rgba(var(--esb-primary-rgb), 0.10);
}

/* ── Panneau détail utilisateur ────────────────────────── */
.adm-panel[b-efl8qjm5lb] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    max-height: 78vh;
}

.adm-panel-header[b-efl8qjm5lb] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--esb-lines-default);
    margin-bottom: 10px;
}

.adm-panel-title-block[b-efl8qjm5lb] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.adm-panel-title[b-efl8qjm5lb] {
    font-size: 0.95rem;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.adm-panel-subtitle[b-efl8qjm5lb] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.adm-panel-body[b-efl8qjm5lb] {
    flex: 1;
    overflow-y: auto;
    padding-right: 2px;
}

/* Métadonnées */
.adm-meta-row[b-efl8qjm5lb] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.adm-meta-label[b-efl8qjm5lb] {
    flex: 1;
    font-size: 12px;
    color: var(--esb-text-secondary);
}

.adm-meta-value[b-efl8qjm5lb] {
    flex: none;
    max-width: 170px;
    text-align: right;
    font-size: 12.5px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Actions */
.adm-actions-title[b-efl8qjm5lb] {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 16px;
}

.adm-actions-list[b-efl8qjm5lb] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 9px;
}

.adm-action-btn[b-efl8qjm5lb] {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 48px;
    padding: 0 13px;
    border-radius: 13px;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    cursor: pointer;
    text-align: left;
    background: transparent;
    transition: transform 0.1s;
}

.adm-action-btn:active:not(:disabled)[b-efl8qjm5lb] {
    transform: scale(0.98);
}

.adm-action-btn--primary[b-efl8qjm5lb] {
    background: rgba(var(--esb-primary-rgb), 0.10);
    border: 1px solid rgba(var(--esb-primary-rgb), 0.40);
    color: var(--esb-primary);
}

.adm-action-btn--warn[b-efl8qjm5lb] {
    background: rgba(var(--esb-warning-rgb), 0.10);
    border: 1px solid rgba(var(--esb-warning-rgb), 0.40);
    color: var(--esb-warning-darken);
}

.adm-action-btn--danger[b-efl8qjm5lb] {
    background: rgba(var(--esb-error-rgb), 0.10);
    border: 1px solid rgba(var(--esb-error-rgb), 0.40);
    color: var(--esb-error);
}

.adm-action-btn:disabled[b-efl8qjm5lb] {
    cursor: not-allowed;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-disabled);
}

.adm-action-text[b-efl8qjm5lb] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.adm-action-label[b-efl8qjm5lb] {
    font-size: 13px;
    font-weight: 600;
}

.adm-action-hint[b-efl8qjm5lb] {
    font-size: 11px;
    opacity: 0.8;
    margin-top: 2px;
    font-weight: 400;
}

/* Confirmation suppression */
.adm-confirm-box[b-efl8qjm5lb] {
    margin-top: 11px;
    padding: 12px 13px;
    border-radius: 14px;
    background: rgba(var(--esb-error-rgb), 0.10);
    border: 1px solid rgba(var(--esb-error-rgb), 0.45);
}

.adm-confirm-text[b-efl8qjm5lb] {
    font-size: 12px;
    color: var(--esb-error);
    font-weight: 600;
    line-height: 1.4;
}

.adm-confirm-actions[b-efl8qjm5lb] {
    display: flex;
    gap: 8px;
    margin-top: 10px;
}

/* `.esb-btn` est en `flex: none` : deux boutons à 100 % de large débordaient du
   panneau, « Supprimer » hors champ. Ils se partagent la ligne. */
.adm-confirm-actions .esb-btn--block[b-efl8qjm5lb] {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
}

/* Panneau vide */
.adm-empty-panel[b-efl8qjm5lb] {
    background: var(--esb-surface);
    border-radius: 16px;
    padding: 24px 18px;
    text-align: center;
    border: 1px dashed var(--esb-lines-default);
    box-shadow: none;
}

.adm-empty-title[b-efl8qjm5lb] {
    font-size: 13px;
    color: var(--esb-text-secondary);
    font-weight: 600;
}

.adm-empty-hint[b-efl8qjm5lb] {
    font-size: 11.5px;
    color: var(--esb-text-disabled);
    margin-top: 5px;
    line-height: 1.45;
}

/* Comptes à vérifier */
.adm-aside-card[b-efl8qjm5lb] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px 16px;
}

.adm-aside-title[b-efl8qjm5lb] {
    font-size: 0.70rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--esb-text-secondary);
}

.adm-flag-row[b-efl8qjm5lb] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 0;
    border-bottom: 1px solid var(--esb-lines-default);
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.15s;
}

.adm-flag-row:hover[b-efl8qjm5lb] {
    background: var(--esb-action-hover);
}

.adm-flag-row:last-child[b-efl8qjm5lb] {
    border-bottom: none;
}

.adm-flag-dot[b-efl8qjm5lb] {
    flex: none;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--esb-warning-darken);
}

.adm-flag-main[b-efl8qjm5lb] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.adm-flag-name[b-efl8qjm5lb] {
    font-size: 12.5px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.adm-flag-note[b-efl8qjm5lb] {
    font-size: 11px;
    color: var(--esb-text-secondary);
    margin-top: 1px;
}

.adm-col-role[b-efl8qjm5lb] { flex: none; width: 150px; }

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .adm-layout[b-efl8qjm5lb] {
        grid-template-columns: minmax(0, 1fr);
    }

    .adm-backdrop[b-efl8qjm5lb] {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.55);
        z-index: 1290;
    }

    .adm-panel[b-efl8qjm5lb] {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1300;
        border-radius: 18px 18px 0 0;
        max-height: 82vh;
        box-shadow: var(--esb-shadow-sheet);
    }
}

@media (max-width: 1300px) {
    .adm-col-role[b-efl8qjm5lb] {
        width: 116px;
    }
}

@media (max-width: 1100px) {
    .adm-col-email[b-efl8qjm5lb] {
        display: none;
    }
}
/* /Components/Pages/ArbitrageModales/AttributionAutoModal.razor.rz.scp.css */
.ar-load-list[b-llbirdrcsw] {
    display: flex;
    flex-direction: column;
    max-height: 300px;
    overflow-y: auto;
    margin-top: 10px;
    padding-right: 2px;
}

/* La case précède le nom. */
.ar-part-row[b-llbirdrcsw] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 9px 2px;
    border-bottom: 1px solid var(--esb-lines-default);
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.15s;
}

.ar-part-row:hover[b-llbirdrcsw] {
    background: var(--esb-action-hover);
}

.ar-part-row:last-child[b-llbirdrcsw] {
    border-bottom: none;
}
/* /Components/Pages/ArbitrageModales/ChargeArbitresModal.razor.rz.scp.css */
.ar-load-list[b-2dyb5c8nte] {
    display: flex;
    flex-direction: column;
    max-height: 300px;
    overflow-y: auto;
    margin-top: 10px;
    padding-right: 2px;
}

.ar-load-row[b-2dyb5c8nte] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.ar-load-row:last-child[b-2dyb5c8nte] {
    border-bottom: none;
}

.ar-load-bar[b-2dyb5c8nte] {
    flex-shrink: 0;
    width: 56px;
    height: 6px;
    border-radius: 3px;
    overflow: hidden;
    background: var(--esb-background-grey);
}

.ar-load-bar-fill[b-2dyb5c8nte] {
    height: 100%;
    border-radius: 3px;
    background: var(--esb-primary);
}

.ar-load-value[b-2dyb5c8nte] {
    flex-shrink: 0;
    width: 20px;
    text-align: right;
    font-weight: 800;
    font-size: 0.95rem;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}
/* /Components/Pages/ArbitrageModales/LicencieCompetences.razor.rz.scp.css */
.ar-load-main[b-r0jkwr2371] {
    flex: 1;
    min-width: 0;
}

.ar-load-name[b-r0jkwr2371] {
    font-size: 0.8rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ar-load-tags[b-r0jkwr2371] {
    display: flex;
    gap: 4px;
    margin-top: 3px;
}

.ar-load-tag[b-r0jkwr2371] {
    height: 18px;
}
/* /Components/Pages/Chronometre.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.chrono-topbar[b-yt4zs51qgd] {
    display: flex;
    align-items: center;
    gap: 12px;
}

[b-yt4zs51qgd] .chrono-status-chip {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.68rem;
    letter-spacing: 0.05em;
}

[b-yt4zs51qgd] .chrono-headline {
    color: var(--esb-text-secondary);
}

/* ── Layout ──────────────────────────────────────────── */
.chrono-layout[b-yt4zs51qgd] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 20px;
    align-items: start;
}

@media (max-width: 1160px) {
    .chrono-layout[b-yt4zs51qgd] {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* ── Cadran ──────────────────────────────────────────── */
.chrono-dial[b-yt4zs51qgd] {
    background: var(--esb-surface);
    border-radius: 18px;
    padding: 22px 24px;
    border: 1px solid var(--esb-lines-default);
    transition: border-color 0.2s ease;
}

.chrono-dial--alarm[b-yt4zs51qgd] {
    border: 2px solid var(--esb-warning);
}

.chrono-dial--ended[b-yt4zs51qgd] {
    border: 2px solid var(--esb-error);
}

.chrono-dial-head[b-yt4zs51qgd] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.chrono-dial-label[b-yt4zs51qgd] {
    flex: 1;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.chrono-cycle-label[b-yt4zs51qgd] {
    font-size: 12px;
    color: var(--esb-text-secondary);
    font-variant-numeric: tabular-nums;
}

/* ── Affichage mobile : anneau de progression ────────── */
.chrono-mobile-only[b-yt4zs51qgd] {
    display: block;
}

.chrono-desktop-only[b-yt4zs51qgd] {
    display: none;
}

@media (min-width: 961px) {
    .chrono-mobile-only[b-yt4zs51qgd] {
        display: none;
    }

    .chrono-desktop-only[b-yt4zs51qgd] {
        display: block;
    }
}

.chrono-ring-wrap[b-yt4zs51qgd] {
    position: relative;
    display: flex;
    justify-content: center;
    margin: 16px auto 0;
    max-width: 240px;
}

.chrono-ring[b-yt4zs51qgd] {
    width: 100%;
    height: auto;
    display: block;
    transform: rotate(-90deg);
}

.chrono-ring-track[b-yt4zs51qgd] {
    fill: none;
    stroke: var(--esb-background-grey);
    stroke-width: 11;
}

.chrono-ring-fill[b-yt4zs51qgd] {
    fill: none;
    stroke-width: 11;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.9s linear, stroke 0.3s ease;
}

.chrono-ring-center[b-yt4zs51qgd] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.chrono-time[b-yt4zs51qgd] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    line-height: 0.95;
    font-variant-numeric: tabular-nums;
    letter-spacing: -1.5px;
}

.chrono-time--ring[b-yt4zs51qgd] {
    font-size: 46px;
}

.chrono-time--big[b-yt4zs51qgd] {
    font-size: 132px;
    text-align: center;
    letter-spacing: -4px;
    display: block;
}

@media (max-width: 1280px) {
    .chrono-time--big[b-yt4zs51qgd] {
        font-size: 92px;
    }
}

.chrono-sublabel[b-yt4zs51qgd] {
    font-size: 10.5px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.chrono-sublabel--center[b-yt4zs51qgd] {
    text-align: center;
    margin-top: 4px;
}

/* ── Barre de progression (desktop) ──────────────────── */
.chrono-progress-track[b-yt4zs51qgd] {
    display: flex;
    height: 8px;
    border-radius: 4px;
    overflow: hidden;
    background: var(--esb-background-grey);
    margin-top: 22px;
}

.chrono-progress-fill[b-yt4zs51qgd] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.9s linear, background 0.3s ease;
}

.chrono-progress-labels[b-yt4zs51qgd] {
    display: flex;
    justify-content: space-between;
    margin-top: 8px;
    font-size: 11.5px;
    color: var(--esb-text-disabled);
    font-variant-numeric: tabular-nums;
}

/* ── Bandeau prochaine alarme ─────────────────────────── */
.chrono-next-alarm[b-yt4zs51qgd] {
    margin-top: 16px;
    padding: 10px 14px;
    border-radius: 12px;
    font-size: 12.5px;
    font-weight: 600;
    text-align: center;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-secondary);
}

.chrono-next-alarm--flash[b-yt4zs51qgd] {
    background: rgba(var(--esb-warning-rgb), 0.14);
    border: 1px solid rgba(var(--esb-warning-rgb), 0.45);
    color: var(--esb-warning-darken);
    animation: chrono-pulse-b-yt4zs51qgd 1s ease-in-out infinite;
}

@keyframes chrono-pulse-b-yt4zs51qgd {
    0%, 100% { opacity: 0.55; }
    50% { opacity: 1; }
}

/* ── Actions ─────────────────────────────────────────── */
.chrono-actions[b-yt4zs51qgd] {
    display: flex;
    gap: 11px;
    margin-top: 20px;
    flex-wrap: wrap;
}

/* ── Journal des alarmes ──────────────────────────────── */
.chrono-log[b-yt4zs51qgd] {
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid var(--esb-lines-default);
}

.chrono-log-title[b-yt4zs51qgd] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.chrono-log-list[b-yt4zs51qgd] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 10px;
}

[b-yt4zs51qgd] .chrono-log-chip {
    font-variant-numeric: tabular-nums;
}

/* ── Panneau de réglages ──────────────────────────────── */
.chrono-setup[b-yt4zs51qgd] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
    transition: opacity 0.2s ease;
}

.chrono-setup--locked[b-yt4zs51qgd] {
    opacity: 0.62;
}

.chrono-setup-head[b-yt4zs51qgd] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.chrono-setup-title[b-yt4zs51qgd] {
    flex: 1;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.chrono-locked-tag[b-yt4zs51qgd] {
    font-size: 11px;
    color: var(--esb-warning-darken);
}

.chrono-fine-title[b-yt4zs51qgd] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 20px;
}

/* ── Grille des presets ────────────────────────────────── */
.chrono-preset-grid[b-yt4zs51qgd] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 11px;
}

.chrono-preset[b-yt4zs51qgd] {
    display: block;
    text-align: left;
    border-radius: 14px;
    padding: 11px 13px;
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-primary);
    transition: border-color 0.15s, transform 0.1s;
}

.chrono-preset:hover[b-yt4zs51qgd] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.chrono-preset:active:not(:disabled)[b-yt4zs51qgd] {
    transform: scale(0.98);
}

.chrono-preset:disabled[b-yt4zs51qgd] {
    cursor: not-allowed;
}

.chrono-preset--active[b-yt4zs51qgd] {
    background: rgba(var(--esb-primary-rgb), 0.10);
    border: 1px solid var(--esb-primary);
}

.chrono-preset-time[b-yt4zs51qgd] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 21px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.chrono-preset--active .chrono-preset-time[b-yt4zs51qgd] {
    color: var(--esb-primary);
}

.chrono-preset-label[b-yt4zs51qgd] {
    display: block;
    font-size: 11.5px;
    color: var(--esb-text-secondary);
    margin-top: 3px;
}

.chrono-preset-note[b-yt4zs51qgd] {
    display: block;
    font-size: 10.5px;
    color: var(--esb-text-disabled);
    margin-top: 2px;
}

/* ── Réglage fin (steppers) ───────────────────────────── */
.chrono-stepper-list[b-yt4zs51qgd] {
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-top: 11px;
}

.chrono-stepper-row[b-yt4zs51qgd] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.chrono-stepper-row:last-child[b-yt4zs51qgd] {
    border-bottom: none;
}

.chrono-stepper-info[b-yt4zs51qgd] {
    flex: 1;
    min-width: 0;
}

.chrono-stepper-label[b-yt4zs51qgd] {
    display: block;
    font-size: 12.5px;
    font-weight: 600;
}

.chrono-stepper-hint[b-yt4zs51qgd] {
    display: block;
    font-size: 10.5px;
    color: var(--esb-text-disabled);
    margin-top: 2px;
}

.chrono-stepper-controls[b-yt4zs51qgd] {
    flex: none;
    display: flex;
    align-items: center;
    gap: 4px;
}

.chrono-stepper-btn[b-yt4zs51qgd] {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    cursor: pointer;
    color: var(--esb-text-primary);
    font-size: 17px;
    font-weight: 600;
    line-height: 1;
    padding: 0;
    transition: background 0.15s, transform 0.1s;
}

.chrono-stepper-btn:hover:not(:disabled)[b-yt4zs51qgd] {
    background: rgba(var(--esb-primary-rgb), 0.08);
}

.chrono-stepper-btn:active:not(:disabled)[b-yt4zs51qgd] {
    transform: scale(0.90);
}

.chrono-stepper-btn:disabled[b-yt4zs51qgd] {
    cursor: not-allowed;
    opacity: 0.5;
}

.chrono-stepper-value[b-yt4zs51qgd] {
    min-width: 46px;
    text-align: center;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 19px;
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/Classement.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
/* ── Podium ──────────────────────────────────────────── */
/* ── Layout principal + aside ───────────────────────────── */
.cl-layout[b-agjby2vznq] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 322px;
    gap: 20px;
    align-items: start;
}

/* Voile de fond : uniquement sous le seuil mobile. */
.cl-main[b-agjby2vznq] {
    min-width: 0;
}

.cl-aside[b-agjby2vznq] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.cl-row--selected[b-agjby2vznq] {
    background: rgba(var(--esb-primary-rgb), 0.10);
}

/* ── Cartes latérales ────────────────────────────────── */
.cl-aside-card[b-agjby2vznq] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px 16px;
}

.cl-aside-title[b-agjby2vznq] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--esb-text-disabled);
    margin-bottom: 10px;
}

/* Panneau détail joueur */
.cl-panel[b-agjby2vznq] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    max-height: 78vh;
}

.cl-panel-header[b-agjby2vznq] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--esb-lines-default);
    margin-bottom: 10px;
}

.cl-panel-title-block[b-agjby2vznq] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.cl-panel-title[b-agjby2vznq] {
    font-size: 0.95rem;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cl-panel-subtitle[b-agjby2vznq] {
    font-size: 0.7rem;
    color: var(--esb-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.cl-panel-body[b-agjby2vznq] {
    flex: 1;
    overflow-y: auto;
    padding-right: 2px;
}

/* Barème */

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .cl-layout[b-agjby2vznq] {
        grid-template-columns: minmax(0, 1fr);
    }

    .cl-panel[b-agjby2vznq] {
        border-radius: 18px 18px 0 0;
        max-height: 82vh;
        box-shadow: var(--esb-shadow-sheet);
    }
}

/* /Components/Pages/Dialogs/ConvocationDialog.razor.rz.scp.css */
.cvd-actions[b-68o7aa8pxg] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 4px;
}

.cvd-count--over[b-68o7aa8pxg] {
    background: rgba(var(--esb-warning-rgb), 0.16);
    color: var(--esb-warning);
}

.cvd-group[b-68o7aa8pxg] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 6px;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.cvd-dot[b-68o7aa8pxg] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.cvd-dot--yes[b-68o7aa8pxg] { background: var(--esb-success); }
.cvd-dot--pending[b-68o7aa8pxg] { background: var(--esb-warning); }
.cvd-dot--no[b-68o7aa8pxg] { background: var(--esb-error); }
/* /Components/Pages/Dialogs/PointsAjustementDialog.razor.rz.scp.css */
.pad-presets[b-lsl28401q1] {
    display: flex;
    gap: 7px;
}

.pad-preset[b-lsl28401q1] {
    flex: 1;
    min-height: 36px;
    border-radius: 10px;
    cursor: pointer;
    font-family: inherit;
    font-size: 0.82rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-secondary);
    transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.pad-preset:hover[b-lsl28401q1] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.pad-preset:active[b-lsl28401q1] {
    transform: scale(0.96);
}

.pad-preset--active[b-lsl28401q1] {
    background: rgba(var(--esb-primary-rgb), 0.10);
    border-color: var(--esb-primary);
    color: var(--esb-primary);
}

.pad-stepper[b-lsl28401q1] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 12px;
    padding: 13px 14px;
    border-radius: 14px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
}

.pad-step-btn[b-lsl28401q1] {
    flex: none;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    cursor: pointer;
    color: var(--esb-text-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    padding: 0;
    transition: background 0.15s, transform 0.1s;
}

.pad-step-btn:hover[b-lsl28401q1] {
    background: rgba(var(--esb-primary-rgb), 0.10);
}

.pad-step-btn:active[b-lsl28401q1] {
    transform: scale(0.90);
}

.pad-stepper-value[b-lsl28401q1] {
    flex: 1;
    text-align: center;
}

.pad-value[b-lsl28401q1] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 38px;
    line-height: 1;
    letter-spacing: -1px;
    font-variant-numeric: tabular-nums;
}

.pad-caption[b-lsl28401q1] {
    display: block;
    font-size: 0.68rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-disabled);
    margin-top: 3px;
}

.pad-hist-head[b-lsl28401q1] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-top: 18px;
    padding-top: 10px;
    border-top: 1px solid var(--esb-lines-default);
}

.pad-hist-title[b-lsl28401q1] {
    flex: 1;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.pad-hist-total[b-lsl28401q1] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    font-variant-numeric: tabular-nums;
}

.pad-hist-list[b-lsl28401q1] {
    display: flex;
    flex-direction: column;
    margin-top: 6px;
}

.pad-hist-row[b-lsl28401q1] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 9px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.pad-hist-chip[b-lsl28401q1] {
    flex: none;
    min-width: 34px;
    text-align: center;
    border-radius: 7px;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 7px;
    font-variant-numeric: tabular-nums;
}

.pad-hist-text[b-lsl28401q1] {
    flex: 1;
    min-width: 0;
}

.pad-hist-comment[b-lsl28401q1] {
    display: block;
    font-size: 0.8rem;
    line-height: 1.35;
}

.pad-hist-meta[b-lsl28401q1] {
    display: block;
    font-size: 0.68rem;
    color: var(--esb-text-disabled);
    margin-top: 2px;
}
/* /Components/Pages/Entrainements.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
/* ── Barre outils (équipe + portée) ──────────────────── */
.ent-toolbar[b-vrbaqei3lg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.ent-team-chips[b-vrbaqei3lg] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.ent-team-chip[b-vrbaqei3lg] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-disabled);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.ent-team-chip:hover[b-vrbaqei3lg] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.ent-team-chip:active[b-vrbaqei3lg] {
    transform: scale(0.96);
}

.ent-team-chip--active[b-vrbaqei3lg] {
    color: var(--esb-text-primary);
    background: var(--esb-action-hover);
}

.ent-team-dot[b-vrbaqei3lg] {
    width: 12px;
    height: 3px;
    border-radius: 2px;
    display: inline-block;
}

/* ── KPI ─────────────────────────────────────────────── */
/* Trois ou quatre tuiles selon l'onglet et le rôle : auto-fit plutôt qu'un nombre
   de colonnes fixe, qui laisserait un trou ; deux colonnes sur téléphone. */
.ent-kpis[b-vrbaqei3lg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr));
    gap: 12px;
}

.ent-kpi[b-vrbaqei3lg] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 13px 15px;
    min-width: 0;
}

.ent-kpi-value[b-vrbaqei3lg] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.8rem;
    line-height: 1;
    letter-spacing: -0.5px;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.ent-kpi--warn .ent-kpi-value[b-vrbaqei3lg] {
    color: var(--esb-secondary);
}

.ent-kpi-label[b-vrbaqei3lg] {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 4px;
}

.ent-kpi-hint[b-vrbaqei3lg] {
    font-size: 0.68rem;
    color: var(--esb-text-disabled);
    margin-top: 4px;
}

/* ── Layout deux colonnes ────────────────────────────── */
.ent-layout[b-vrbaqei3lg] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 20px;
    align-items: start;
}

/* Voile de fond : uniquement sous le seuil mobile. */
/* ── Carte liste ─────────────────────────────────────── */
.ent-list-card[b-vrbaqei3lg] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    overflow: hidden;
}

.ent-list-head[b-vrbaqei3lg] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 13px 18px 12px;
}

.ent-list-count[b-vrbaqei3lg] {
    flex: 1;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.ent-list-pending[b-vrbaqei3lg] {
    flex: none;
    border-radius: 7px;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 9px;
    background: rgba(var(--esb-primary-rgb), 0.12);
    color: var(--esb-primary);
}

.ent-empty[b-vrbaqei3lg] {
    padding: 20px 18px 24px;
    font-size: 0.8rem;
    color: var(--esb-text-disabled);
}

.ent-rows[b-vrbaqei3lg] {
    display: flex;
    flex-direction: column;
}

.ent-row[b-vrbaqei3lg] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 18px;
    border-top: 1px solid var(--esb-lines-default);
    cursor: pointer;
    flex-wrap: wrap;
    transition: background 0.15s;
}

.ent-row:hover[b-vrbaqei3lg] {
    background: var(--esb-action-hover);
}

.ent-row:active[b-vrbaqei3lg] {
    background: rgba(var(--esb-primary-rgb), 0.12);
}

.ent-row--selected[b-vrbaqei3lg] {
    background: rgba(var(--esb-primary-rgb), 0.08);
    box-shadow: inset 2px 0 0 var(--esb-primary);
}

.ent-row-date[b-vrbaqei3lg] {
    flex: none;
    width: 44px;
    text-align: center;
    padding-right: 12px;
    border-right: 1px solid var(--esb-lines-default);
}

.ent-row-day[b-vrbaqei3lg] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.25rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.ent-row-month[b-vrbaqei3lg] {
    display: block;
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    text-transform: capitalize;
}

.ent-row-main[b-vrbaqei3lg] {
    flex: 1;
    min-width: 160px;
}

.ent-row-title-line[b-vrbaqei3lg] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.ent-row-title[b-vrbaqei3lg] {
    font-weight: 600;
    font-size: 0.9rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ent-row-sub[b-vrbaqei3lg] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ent-row-presence[b-vrbaqei3lg] {
    flex: none;
    width: 190px;
}

.ent-row-presence-top[b-vrbaqei3lg] {
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.ent-row-yes[b-vrbaqei3lg] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.ent-row-den[b-vrbaqei3lg] {
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
}

.ent-row-pending[b-vrbaqei3lg] {
    margin-left: auto;
    font-size: 0.64rem;
    color: var(--esb-text-disabled);
}

.ent-row-pending--warn[b-vrbaqei3lg] {
    color: var(--esb-primary);
    font-weight: 600;
}

/* Rendue par EsbPresenceBar : le <div> n'a pas l'attribut de scope, d'où ::deep. */
.ent-row-presence[b-vrbaqei3lg]  .esb-presbar {
    margin-top: 5px;
}

.ent-row-answer[b-vrbaqei3lg] {
    flex: none;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

/* ── Panneau détail ──────────────────────────────────── */
.ent-panel[b-vrbaqei3lg] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 16px 18px;
}

.ent-panel-empty[b-vrbaqei3lg] {
    padding: 24px 6px;
    text-align: center;
}

.ent-panel-empty-title[b-vrbaqei3lg] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--esb-text-secondary);
}

.ent-panel-empty-sub[b-vrbaqei3lg] {
    font-size: 0.72rem;
    color: var(--esb-text-disabled);
    margin-top: 5px;
    line-height: 1.45;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .ent-layout[b-vrbaqei3lg] {
        grid-template-columns: minmax(0, 1fr);
    }

    .ent-row-presence[b-vrbaqei3lg] {
        display: none;
    }

    .ent-panel[b-vrbaqei3lg] {
        display: none;
        border-radius: 18px 18px 0 0;
        max-height: 80vh;
        overflow-y: auto;
        box-shadow: var(--esb-shadow-sheet);
        padding: 16px 16px 20px;
    }

    .ent-panel--open[b-vrbaqei3lg] {
        display: block;
    }
}

@media (max-width: 600px) {
    .ent-row[b-vrbaqei3lg] {
        gap: 10px;
        padding: 11px 14px;
    }

    .ent-row-answer[b-vrbaqei3lg] {
        width: 100%;
        margin-left: 0;
        padding-left: 58px;
        box-sizing: border-box;
    }
}
/* /Components/Pages/Equipes.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.eq-topbar[b-mime19xyw5] {
    display: flex;
    align-items: flex-end;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.eq-topbar-main[b-mime19xyw5] {
    flex: 1;
    min-width: 0;
}

.eq-title[b-mime19xyw5] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 36px;
    letter-spacing: -0.5px;
    line-height: 1;
    margin: 0;
    color: var(--esb-text-primary);
}

.eq-topbar-sub[b-mime19xyw5] {
    font-size: 12.5px;
    color: var(--esb-text-secondary);
    margin-top: 5px;
}

/* ── Layout deux colonnes ────────────────────────────── */
.eq-layout[b-mime19xyw5] {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

/* Voile de fond : uniquement sous le seuil mobile. */
/* ── Liste des équipes ───────────────────────────────── */
.eq-list[b-mime19xyw5] {
    min-width: 0;
}

.eq-empty[b-mime19xyw5] {
    padding: 24px 18px;
    text-align: center;
    font-size: 0.82rem;
    color: var(--esb-text-secondary);
}

.eq-rows[b-mime19xyw5] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.eq-card[b-mime19xyw5] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    text-align: left;
    padding: 12px 13px;
    border-radius: 14px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    color: var(--esb-text-primary);
    transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.eq-card:hover[b-mime19xyw5] {
    border-color: rgba(var(--esb-primary-rgb), 0.55);
}

.eq-card:active[b-mime19xyw5] {
    transform: scale(0.99);
}

.eq-card--alert[b-mime19xyw5] {
    border-color: rgba(var(--esb-secondary-rgb), 0.38);
}

.eq-card--selected[b-mime19xyw5] {
    border-color: var(--esb-primary);
    box-shadow: inset 2px 0 0 var(--esb-primary);
    background: rgba(var(--esb-primary-rgb), 0.10);
}

.eq-card-badge[b-mime19xyw5] {
    flex: none;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 15px;
    letter-spacing: 0.02em;
}

.eq-card-main[b-mime19xyw5] {
    flex: 1;
    min-width: 0;
}

.eq-card-title[b-mime19xyw5] {
    display: block;
    font-size: 14px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-card-sub[b-mime19xyw5] {
    display: block;
    font-size: 11px;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-card-right[b-mime19xyw5] {
    flex: none;
    text-align: right;
}

.eq-card-rate[b-mime19xyw5] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

.eq-card-alert-tag[b-mime19xyw5] {
    display: block;
    font-size: 9.5px;
    font-weight: 700;
    color: var(--esb-secondary);
    margin-top: 3px;
}

/* ── Panneau détail ──────────────────────────────────── */
.eq-panel[b-mime19xyw5] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    max-height: 82vh;
}

.eq-panel-empty[b-mime19xyw5] {
    padding: 40px 6px;
    text-align: center;
}

.eq-panel-empty-title[b-mime19xyw5] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--esb-text-secondary);
}

.eq-panel-empty-sub[b-mime19xyw5] {
    font-size: 0.72rem;
    color: var(--esb-text-disabled);
    margin-top: 5px;
    line-height: 1.45;
}

/* En-tête */
.eq-panel-header[b-mime19xyw5] {
    flex: none;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.eq-panel-back[b-mime19xyw5] {
    display: none;
    flex: none;
    width: 32px;
    height: 32px;
    margin-left: -6px;
    padding: 0;
    border: none;
    border-radius: 10px;
    background: transparent;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    color: var(--esb-text-secondary);
    transition: background 0.15s, color 0.15s, transform 0.1s;
}

.eq-panel-back:hover[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.10);
    color: var(--esb-text-primary);
}

.eq-panel-back:active[b-mime19xyw5] {
    transform: scale(0.90);
}

/* Boutons d'action en icône */
.eq-iconbtn[b-mime19xyw5] {
    flex: none;
    width: 30px;
    height: 30px;
    padding: 0;
    border: none;
    border-radius: 9px;
    background: transparent;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--esb-primary);
    transition: background 0.15s, color 0.15s, transform 0.1s;
}

.eq-iconbtn:hover[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.12);
}

.eq-iconbtn:active[b-mime19xyw5] {
    transform: scale(0.90);
}

.eq-iconbtn--danger[b-mime19xyw5] {
    color: var(--esb-error);
}

.eq-iconbtn--danger:hover[b-mime19xyw5] {
    background: rgba(var(--esb-error-rgb), 0.12);
}

.eq-panel-badge[b-mime19xyw5] {
    flex: none;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 19px;
    letter-spacing: 0.02em;
}

.eq-panel-title-block[b-mime19xyw5] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.eq-panel-title[b-mime19xyw5] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 24px;
    letter-spacing: -0.25px;
    line-height: 1.1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-panel-subtitle[b-mime19xyw5] {
    font-size: 12px;
    color: var(--esb-text-secondary);
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-hbtn[b-mime19xyw5] {
    flex: none;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 12px;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--esb-text-secondary);
    transition: border-color 0.15s, color 0.15s, transform 0.1s;
}

.eq-hbtn:active[b-mime19xyw5] {
    transform: scale(0.97);
}

.eq-hbtn:hover[b-mime19xyw5] {
    border-color: rgba(var(--esb-primary-rgb), 0.55);
    color: var(--esb-text-primary);
}

.eq-hbtn--primary[b-mime19xyw5] {
    border: none;
    background: var(--esb-primary);
    color: #fff;
    box-shadow: 0 3px 10px rgba(var(--esb-primary-rgb), 0.35);
}

.eq-hbtn--primary:hover[b-mime19xyw5] {
    background: var(--esb-primary-darken);
    color: #fff;
}

.eq-hbtn--danger[b-mime19xyw5] {
    color: var(--esb-error);
    border-color: rgba(var(--esb-error-rgb), 0.35);
}

.eq-hbtn--danger:hover[b-mime19xyw5] {
    border-color: var(--esb-error);
    color: var(--esb-error);
}

/* Bande de statistiques */
.eq-stats[b-mime19xyw5] {
    flex: none;
    display: flex;
    gap: 14px;
    padding: 14px 20px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.eq-stat[b-mime19xyw5] {
    flex: 1;
    min-width: 0;
}

.eq-stat-value[b-mime19xyw5] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

.eq-stat-label[b-mime19xyw5] {
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 3px;
}

.eq-spark[b-mime19xyw5] {
    display: flex;
    gap: 3px;
    align-items: flex-end;
    height: 30px;
}

.eq-spark--empty[b-mime19xyw5] {
    border-bottom: 1px dashed var(--esb-lines-default);
}

.eq-spark-bar[b-mime19xyw5] {
    flex: 1;
    min-height: 3px;
    border-radius: 2px 2px 0 0;
    background: rgba(var(--esb-primary-rgb), 0.45);
}

.eq-spark-bar--last[b-mime19xyw5] {
    background: var(--esb-primary);
}

/* Onglets */
.eq-tabs[b-mime19xyw5] {
    flex: none;
    display: flex;
    border-bottom: 1px solid var(--esb-lines-default);
    overflow-x: auto;
}

.eq-tab[b-mime19xyw5] {
    flex: none;
    padding: 0 22px;
    min-height: 44px;
    border: none;
    background: transparent;
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    white-space: nowrap;
    color: var(--esb-text-secondary);
    transition: color 0.15s;
}

.eq-tab:hover[b-mime19xyw5] {
    color: var(--esb-text-primary);
}

.eq-tab:active[b-mime19xyw5] {
    opacity: 0.75;
}

.eq-tab--active[b-mime19xyw5] {
    color: var(--esb-text-primary);
    box-shadow: inset 0 -2px 0 var(--esb-primary);
}

.eq-panel-body[b-mime19xyw5] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}


/* Effectif */
.eq-roster-empty[b-mime19xyw5] {
    padding: 32px 20px;
    text-align: center;
    font-size: 0.8rem;
    color: var(--esb-text-secondary);
}

.eq-roster-head[b-mime19xyw5],
.eq-roster-row[b-mime19xyw5] {
    display: flex;
    align-items: center;
    padding: 12px 20px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.eq-roster-head > span[b-mime19xyw5] {
    padding-right: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.eq-roster-head[b-mime19xyw5] {
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 10px 20px;
    border-bottom: 2px solid var(--esb-lines-default);
    background: var(--esb-surface);
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.eq-roster-row:nth-child(even)[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.035);
}

.eq-c-num[b-mime19xyw5]    { flex: none; width: 38px; font-size: 13px; font-variant-numeric: tabular-nums; color: var(--esb-text-secondary); }
.eq-c-name[b-mime19xyw5]   { flex: 1; min-width: 0; padding-right: 10px; }
.eq-c-poste[b-mime19xyw5]  { flex: none; width: 104px; }
.eq-c-niveau[b-mime19xyw5] { flex: none; width: 118px; }
.eq-c-arb[b-mime19xyw5]    { flex: none; width: 104px; display: flex; align-items: center; gap: 6px; }
.eq-c-rate[b-mime19xyw5]   { flex: none; width: 150px; display: flex; align-items: center; gap: 9px; }
.eq-c-pts[b-mime19xyw5]    { flex: none; width: 78px; display: flex; align-items: center; gap: 2px; }
.eq-c-act[b-mime19xyw5]    { flex: none; width: 84px; display: flex; justify-content: flex-end; }

.eq-player-name[b-mime19xyw5] {
    display: block;
    font-size: 13.5px;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-player-login[b-mime19xyw5] {
    display: block;
    font-size: 11px;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-tag[b-mime19xyw5] {
    display: inline-block;
    border-radius: 6px;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 7px;
    white-space: nowrap;
}

.eq-tag--btn[b-mime19xyw5] {
    border: none;
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    transition: transform 0.1s;
}

.eq-tag--btn:active[b-mime19xyw5] {
    transform: scale(0.95);
}

.eq-tag--poste[b-mime19xyw5] {
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: rgba(var(--esb-primary-rgb), 0.12);
    color: var(--esb-primary-lighten);
}

.eq-tag--cadre[b-mime19xyw5] {
    background: rgba(var(--esb-success-rgb), 0.16);
    color: var(--esb-success);
}

.eq-tag--inter[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.12);
    color: var(--esb-primary-lighten);
}

.eq-tag--debutant[b-mime19xyw5] {
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-disabled);
}

.eq-tag--coach[b-mime19xyw5] {
    font-size: 10.5px;
    padding: 2px 8px;
    background: rgba(var(--esb-primary-rgb), 0.12);
    color: var(--esb-primary-lighten);
}

.eq-arb-icon[b-mime19xyw5] {
    display: inline-flex;
    color: var(--esb-primary);
}

.eq-arb-icon svg[b-mime19xyw5] {
    width: 15px;
    height: 15px;
    fill: currentColor;
}

.eq-arb-icon--officiel[b-mime19xyw5] {
    color: var(--esb-secondary);
}

/* Menu de niveau */
.eq-niveau[b-mime19xyw5] {
    position: relative;
    display: inline-block;
}

.eq-niveau-menu[b-mime19xyw5] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 20;
    min-width: 132px;
    padding: 4px;
    border-radius: 12px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: 0 8px 24px rgba(var(--esb-primary-rgb), 0.28);
}

.eq-niveau-menu--up[b-mime19xyw5] {
    top: auto;
    bottom: calc(100% + 6px);
}

.eq-niveau-item[b-mime19xyw5] {
    display: block;
    width: 100%;
    padding: 7px 10px;
    border: none;
    border-radius: 8px;
    background: transparent;
    cursor: pointer;
    text-align: left;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    font-size: 12.5px;
    color: var(--esb-text-primary);
    transition: background 0.15s;
}

.eq-niveau-item:hover[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.12);
}

.eq-niveau-item:active[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.20);
}

.eq-niveau-item--active[b-mime19xyw5] {
    color: var(--esb-primary-lighten);
    font-weight: 600;
}

.eq-menu-backdrop[b-mime19xyw5] {
    position: fixed;
    inset: 0;
    z-index: 15;
}

.eq-rate[b-mime19xyw5] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 16px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.eq-rate--good[b-mime19xyw5] { color: var(--esb-success); }
.eq-rate--mid[b-mime19xyw5]  { color: var(--esb-primary-lighten); }
.eq-rate--low[b-mime19xyw5]  { color: var(--esb-secondary); }
.eq-rate--none[b-mime19xyw5] { color: var(--esb-text-disabled); }

.eq-rate-track[b-mime19xyw5] {
    flex: 1;
    display: flex;
    height: 5px;
    border-radius: 3px;
    overflow: hidden;
    background: rgba(var(--esb-primary-rgb), 0.12);
}

.eq-rate-fill[b-mime19xyw5] {
    display: block;
    border-radius: 3px;
}

.eq-rate-fill.eq-rate--good[b-mime19xyw5] { background: var(--esb-success); }
.eq-rate-fill.eq-rate--mid[b-mime19xyw5]  { background: var(--esb-primary-lighten); }
.eq-rate-fill.eq-rate--low[b-mime19xyw5]  { background: var(--esb-secondary); }
.eq-rate-fill.eq-rate--none[b-mime19xyw5] { background: transparent; }

.eq-pts-value[b-mime19xyw5] {
    font-size: 13px;
    font-variant-numeric: tabular-nums;
}

/* Staff */
.eq-staff[b-mime19xyw5] {
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.eq-staff-add[b-mime19xyw5] {
    align-self: flex-start;
}

.eq-staff-card[b-mime19xyw5] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
    border-radius: 14px;
    padding: 13px 15px;
}

.eq-staff-avatar[b-mime19xyw5] {
    flex: none;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13.5px;
    font-weight: 700;
    background: rgba(var(--esb-primary-rgb), 0.12);
    color: var(--esb-primary-lighten);
}

.eq-staff-main[b-mime19xyw5] {
    flex: 1;
    min-width: 0;
}

.eq-staff-name[b-mime19xyw5] {
    font-size: 14px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eq-staff-sub[b-mime19xyw5] {
    font-size: 11.5px;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .eq-layout[b-mime19xyw5] {
        grid-template-columns: minmax(0, 1fr);
    }

    .eq-panel[b-mime19xyw5] {
        display: none;
        border-radius: 18px 18px 0 0;
        max-height: 88vh;
        box-shadow: var(--esb-shadow-sheet);
    }

    .eq-panel--open[b-mime19xyw5] {
        display: flex;
        flex-direction: column;
    }

    .esb-search[b-mime19xyw5] {
        order: 3;
        width: 100%;
    }
}

@media (max-width: 1160px) {
    .eq-panel-back[b-mime19xyw5] {
        display: inline-flex;
    }
}

@media (max-width: 1200px) {
    .eq-c-poste[b-mime19xyw5],
    .eq-c-niveau[b-mime19xyw5] {
        display: none;
    }
}

@media (max-width: 1160px) {
    .eq-c-pts[b-mime19xyw5] {
        display: none;
    }

    /* La colonne Arbitrage reste : elle porte le compteur de créneaux tenus,
       c'est l'information qu'on vient chercher ici. On la resserre. */
    .eq-c-arb[b-mime19xyw5] {
        width: 88px;
    }

    .eq-c-rate[b-mime19xyw5] {
        width: 118px;
    }

    .eq-panel-header[b-mime19xyw5],
    .eq-stats[b-mime19xyw5],
    .eq-roster-head[b-mime19xyw5],
    .eq-roster-row[b-mime19xyw5] {
        padding-left: 14px;
        padding-right: 14px;
    }
}

@media (max-width: 600px) {
    .eq-row[b-mime19xyw5] {
        padding: 10px 14px;
    }

    .eq-stats[b-mime19xyw5] {
        overflow-x: auto;
    }

    .eq-stat[b-mime19xyw5] {
        min-width: 74px;
    }
}

/* Nombre de créneaux d'arbitrage tenus dans la saison, à côté des compétences. */
.eq-arb-count[b-mime19xyw5] {
    margin-left: auto;
    min-width: 20px;
    padding: 1px 6px;
    border-radius: 7px;
    background: rgba(var(--esb-primary-rgb), 0.14);
    color: var(--esb-primary);
    font-size: 11.5px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    text-align: center;
}

.eq-arb-count--zero[b-mime19xyw5] {
    background: transparent;
    color: var(--esb-text-disabled);
}

/* ── Téléphone : éléments propres à la vue mobile ────────── */
/* Masqués par défaut, révélés sous 640 px (bloc en fin de fichier). Ces règles
   suivent .eq-iconbtn et .eq-hbtn : à spécificité égale, elles l'emportent. */
.eq-mob[b-mime19xyw5],
.eq-m-meta[b-mime19xyw5],
.eq-m-more[b-mime19xyw5] {
    display: none;
}

.eq-num[b-mime19xyw5] {
    font-variant-numeric: tabular-nums;
}

.eq-tag--arb[b-mime19xyw5] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    background: rgba(var(--esb-primary-rgb), 0.08);
    color: var(--esb-text-secondary);
    font-variant-numeric: tabular-nums;
}

.eq-tag--arb .eq-arb-icon svg[b-mime19xyw5] {
    width: 12px;
    height: 12px;
}

.eq-tag--pts[b-mime19xyw5] {
    background: rgba(var(--esb-secondary-rgb), 0.14);
    color: var(--esb-secondary);
    font-variant-numeric: tabular-nums;
}

.eq-tag--pts-zero[b-mime19xyw5] {
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-disabled);
}

/* Feuille d'actions : remonte du bas, au-dessus du panneau devenu feuille (1300). */
.eq-as-backdrop[b-mime19xyw5] {
    position: fixed;
    inset: 0;
    z-index: 1400;
    background: rgba(0, 0, 0, 0.55);
}

.eq-as[b-mime19xyw5] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1410;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px 12px calc(12px + env(safe-area-inset-bottom));
    border-radius: 18px 18px 0 0;
    background: var(--esb-surface);
    box-shadow: var(--esb-shadow-sheet);
}

.eq-as-grip[b-mime19xyw5] {
    align-self: center;
    width: 36px;
    height: 4px;
    border-radius: 2px;
    background: var(--esb-lines-default);
    margin-bottom: 8px;
}

.eq-as-title[b-mime19xyw5] {
    padding: 0 8px 8px;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 19px;
    line-height: 1.15;
    color: var(--esb-text-primary);
}

.eq-as-item[b-mime19xyw5] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 48px;
    padding: 0 8px;
    border: none;
    border-radius: 10px;
    background: transparent;
    cursor: pointer;
    text-align: left;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--esb-text-primary);
}

.eq-as-item:active[b-mime19xyw5] {
    background: rgba(var(--esb-primary-rgb), 0.12);
}

.eq-as-item--danger[b-mime19xyw5] {
    color: var(--esb-error);
}

[b-mime19xyw5] .eq-as-icon {
    width: 18px;
    height: 18px;
    flex: none;
}

.eq-as-aside[b-mime19xyw5] {
    margin-left: auto;
    font-size: 12px;
    font-weight: 600;
    color: var(--esb-text-secondary);
    font-variant-numeric: tabular-nums;
}

.eq-as-label[b-mime19xyw5] {
    padding: 8px 8px 6px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.eq-as-seg[b-mime19xyw5] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    padding: 0 8px 8px;
}

.eq-as-seg-btn[b-mime19xyw5] {
    min-height: 40px;
    border-radius: 10px;
    border: 1px solid var(--esb-lines-default);
    background: transparent;
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--esb-text-secondary);
}

.eq-as-seg-btn--on[b-mime19xyw5] {
    border-color: var(--esb-primary);
    background: rgba(var(--esb-primary-rgb), 0.14);
    color: var(--esb-primary-lighten);
}

.eq-as-cancel[b-mime19xyw5] {
    margin-top: 6px;
    min-height: 46px;
    border-radius: 12px;
    border: 1px solid var(--esb-lines-default);
    background: transparent;
    cursor: pointer;
    font-family: Manrope, 'Helvetica Neue', Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--esb-text-secondary);
}

/* ═══════════════════════════════════════════════════════════
   TÉLÉPHONE (≤ 640 px, seuil de la barre latérale) — en tout
   dernier, pour l'emporter sur les blocs responsives précédents.
   Le tableau de huit colonnes réduisait le nom des joueurs à une
   lettre : chaque joueur devient une carte sur trois rangs.
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 640px) {
    .eq-desk[b-mime19xyw5] {
        display: none;
    }

    .eq-iconbtn.eq-mob[b-mime19xyw5] {
        display: inline-flex;
        width: 36px;
        height: 36px;
        color: var(--esb-text-secondary);
    }

    /* En-tête : le nom de l'équipe passe en entier, sur deux lignes au besoin. */
    .eq-panel-header[b-mime19xyw5] {
        gap: 10px;
        padding: 12px 14px;
    }

    .eq-panel-badge[b-mime19xyw5] {
        width: 38px;
        height: 38px;
        border-radius: 11px;
        font-size: 15px;
    }

    .eq-panel-title[b-mime19xyw5] {
        font-size: 20px;
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    /* Chiffres : grille 2 × 2, la mini-courbe est illisible à cette taille. */
    .eq-stats[b-mime19xyw5] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px 14px;
        overflow: visible;
    }

    .eq-stat[b-mime19xyw5] {
        min-width: 0;
        padding: 8px 10px;
        border-radius: 10px;
        background: rgba(var(--esb-primary-rgb), 0.06);
    }

    .eq-stat--spark[b-mime19xyw5] {
        display: none;
    }

    .eq-stat-value[b-mime19xyw5] {
        font-size: 21px;
    }

    /* Onglets : défilent au doigt plutôt que d'être coupés. */
    .eq-tabs[b-mime19xyw5] {
        scrollbar-width: none;
    }

    .eq-tabs[b-mime19xyw5]::-webkit-scrollbar {
        display: none;
    }

    .eq-tab[b-mime19xyw5] {
        padding: 0 14px;
    }

    .eq-add-mob[b-mime19xyw5] {
        display: block;
        padding: 12px 14px 4px;
    }

    .eq-add-mob .eq-hbtn[b-mime19xyw5] {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
    }

    /* Effectif : carte joueur — numéro, nom complet, assiduité, menu ;
       puis les étiquettes ; puis la barre d'assiduité. */
    .eq-roster-head[b-mime19xyw5] {
        display: none;
    }

    .eq-roster-row[b-mime19xyw5] {
        display: grid;
        grid-template-columns: 28px minmax(0, 1fr) auto 36px;
        grid-template-areas:
            "num name rate more"
            ".   meta meta meta"
            ".   bar  bar  .";
        column-gap: 10px;
        row-gap: 6px;
        align-items: center;
        padding: 12px 10px 12px 14px;
    }

    .eq-c-num[b-mime19xyw5] {
        grid-area: num;
        width: auto;
    }

    .eq-num[b-mime19xyw5] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: rgba(var(--esb-primary-rgb), 0.12);
        color: var(--esb-primary-lighten);
        font-size: 12px;
        font-weight: 700;
    }

    .eq-c-name[b-mime19xyw5] {
        grid-area: name;
        padding-right: 0;
    }

    .eq-player-name[b-mime19xyw5] {
        white-space: normal;
        line-height: 1.3;
        font-weight: 600;
    }

    .eq-player-login[b-mime19xyw5] {
        display: none;
    }

    .eq-c-poste[b-mime19xyw5],
    .eq-c-niveau[b-mime19xyw5],
    .eq-c-arb[b-mime19xyw5],
    .eq-c-pts[b-mime19xyw5],
    .eq-c-act[b-mime19xyw5] {
        display: none;
    }

    .eq-c-rate[b-mime19xyw5] {
        display: contents;
    }

    .eq-rate[b-mime19xyw5] {
        grid-area: rate;
        font-size: 18px;
    }

    .eq-rate-track[b-mime19xyw5] {
        grid-area: bar;
        height: 4px;
    }

    .eq-m-meta[b-mime19xyw5] {
        grid-area: meta;
        display: flex;
        flex-wrap: wrap;
        gap: 5px;
    }

    .eq-m-more[b-mime19xyw5] {
        grid-area: more;
        display: inline-flex;
        width: 36px;
        height: 36px;
        color: var(--esb-text-secondary);
    }

    /* Staff : même logique, le rôle passe dans la sous-ligne, les actions dans « ⋮ ». */
    .eq-staff[b-mime19xyw5] {
        padding: 12px 14px;
    }

    .eq-staff-add[b-mime19xyw5] {
        align-self: stretch;
    }

    .eq-staff-card[b-mime19xyw5] {
        padding: 12px 8px 12px 13px;
    }

    .eq-staff-name[b-mime19xyw5] {
        white-space: normal;
        line-height: 1.3;
    }
}
/* /Components/Pages/GestionArbitrage.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.ar-topbar[b-hgxb45l38s] {
    display: flex;
    flex-direction: column;
}

[b-hgxb45l38s] .ar-topbar-sub {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

/* ── Panneau des trous de couverture ─────────────────── */
.ar-gap-panel[b-hgxb45l38s] {
    border-radius: 16px;
    padding: 15px 18px;
    background: rgba(var(--esb-warning-rgb), 0.10);
    border: 1px solid rgba(var(--esb-warning-rgb), 0.45);
}

.ar-gap-header[b-hgxb45l38s] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ar-gap-title[b-hgxb45l38s] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-warning-darken);
}

.ar-gap-count[b-hgxb45l38s] {
    margin-left: auto;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 22px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-warning-darken);
}

.ar-gap-hint[b-hgxb45l38s] {
    font-size: 0.76rem;
    color: var(--esb-text-secondary);
    margin-top: 6px;
}

.ar-gap-list[b-hgxb45l38s] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 11px;
}

.ar-gap-item[b-hgxb45l38s] {
    flex: 1;
    min-width: 220px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 12px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    text-align: left;
    font-family: inherit;
    cursor: pointer;
    transition: border-color 0.15s, transform 0.1s;
}

.ar-gap-item:hover[b-hgxb45l38s] {
    border-color: var(--esb-secondary);
}

.ar-gap-item:active[b-hgxb45l38s] {
    transform: scale(0.98);
}

.ar-gap-note[b-hgxb45l38s] {
    flex: 1;
    min-width: 0;
    font-size: 11.5px;
    color: var(--esb-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ar-gap-cta[b-hgxb45l38s] {
    flex: none;
    font-size: 12px;
    font-weight: 700;
    color: var(--esb-secondary);
}

.ar-gap-date[b-hgxb45l38s] {
    flex-shrink: 0;
    font-size: 12px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

/* ── Layout principal + aside ───────────────────────────── */
.ar-layout[b-hgxb45l38s] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 318px;
    gap: 20px;
    align-items: start;
}

.ar-main[b-hgxb45l38s] {
    min-width: 0;
}

.ar-aside[b-hgxb45l38s] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Cartes latérales ────────────────────────────────── */
.ar-aside-card[b-hgxb45l38s] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px 16px;
}

.ar-aside-title[b-hgxb45l38s] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--esb-text-disabled);
    margin-bottom: 2px;
}

/* Étiquettes de compétence des candidats du panneau */
[b-hgxb45l38s] .ar-load-tag {
    height: 18px;
}


/* Compétences disponibles */
.ar-skill-list[b-hgxb45l38s] {
    display: flex;
    flex-direction: column;
    gap: 11px;
    margin-top: 12px;
}

.ar-skill-line[b-hgxb45l38s] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.ar-skill-label[b-hgxb45l38s] {
    flex: 1;
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
}

.ar-skill-value[b-hgxb45l38s] {
    font-weight: 800;
    font-size: 1.05rem;
    font-variant-numeric: tabular-nums;
}

.ar-skill-bar[b-hgxb45l38s] {
    height: 6px;
    border-radius: 3px;
    overflow: hidden;
    background: var(--esb-background-grey);
    margin-top: 5px;
}

.ar-skill-bar-fill[b-hgxb45l38s] {
    height: 100%;
    border-radius: 3px;
}

/* Champs convertis */
.ar-team-field[b-hgxb45l38s] {
    flex: none;
    min-width: 200px;
}

.ar-date-field[b-hgxb45l38s] {
    flex: none;
    min-width: 180px;
}

.ar-arbitre-field[b-hgxb45l38s] {
    flex: none;
    width: 190px;
    min-width: 0;
}

/* Présence des arbitres sur un créneau passé */
.ar-presences[b-hgxb45l38s] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 190px;
}

.ar-presence[b-hgxb45l38s] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.ar-presence-nom[b-hgxb45l38s] {
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ═══════════════════════════════════════════════════════════
   TABLEAU DES CRÉNEAUX — reprise de « Arbitrage ESB »
   ═══════════════════════════════════════════════════════════ */

.ar-table-card[b-hgxb45l38s] {
    overflow: hidden;
}

.ar-table-head[b-hgxb45l38s] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px 12px;
}

.ar-table-title[b-hgxb45l38s] {
    flex: 1;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.ar-table-note[b-hgxb45l38s] {
    font-size: 11.5px;
    color: var(--esb-text-disabled);
}

/* Une seule grille pour l'en-tête et les lignes : les colonnes restent alignées.
   Pas de colonne « Événement » dédiée : elle serait vide sur l'immense majorité
   des créneaux (liés à un match), et Arbitre 1 / Arbitre 2 profitent de l'espace
   ainsi rendu. Le rare complément (créneau libre, notes) passe en seconde ligne
   sous la date plutôt que d'occuper toute une colonne pour lui. */
.ar-cols[b-hgxb45l38s] {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    padding: 12px 20px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.ar-cols--head[b-hgxb45l38s] {
    padding: 9px 20px;
    border-top: 1px solid var(--esb-lines-default);
    border-bottom: 2px solid var(--esb-lines-default);
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.ar-cols--row[b-hgxb45l38s] {
    cursor: pointer;
    transition: background 0.15s;
}

.ar-cols--row:last-child[b-hgxb45l38s] {
    border-bottom: none;
}

.ar-cols--row:hover[b-hgxb45l38s] {
    background: var(--esb-action-hover);
}

.ar-cols--row:active[b-hgxb45l38s] {
    background: rgba(var(--esb-primary-rgb), 0.12);
}

/* Créneau dont au moins un poste est vide */
.ar-cols--gap[b-hgxb45l38s] {
    background: rgba(224, 160, 48, 0.07);
}

.ar-cols--past[b-hgxb45l38s] {
    opacity: 0.72;
}

.ar-cols--selected[b-hgxb45l38s] {
    background: var(--esb-primary-hover);
    box-shadow: inset 3px 0 0 var(--esb-primary);
}

.ar-c-date[b-hgxb45l38s] {
    min-width: 0;
}

.ar-cell-date[b-hgxb45l38s] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

[b-hgxb45l38s] .ar-type-tag {
    height: 16px;
    margin-top: 3px;
    font-size: 9.5px;
}

.ar-c-date-note[b-hgxb45l38s] {
    display: block;
    margin-top: 3px;
    font-size: 11px;
    color: var(--esb-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ar-c-slot[b-hgxb45l38s] {
    min-width: 0;
    padding-right: 10px;
}

.ar-slot-nom[b-hgxb45l38s] {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: var(--esb-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ar-slot-nom--vide[b-hgxb45l38s] {
    font-weight: 600;
    color: var(--esb-secondary);
}

.ar-slot-badges[b-hgxb45l38s] {
    display: block;
    margin-top: 2px;
    font-size: 10px;
    color: var(--esb-text-disabled);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Créneaux passés : nom + statut de présence */
.ar-c-result[b-hgxb45l38s] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ar-result-nom[b-hgxb45l38s] {
    flex: 1;
    min-width: 0;
    font-size: 12.5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Panneau d'attribution ──────────────────────────────── */
.ar-panel-head[b-hgxb45l38s] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 12px;
}

.ar-panel-head-main[b-hgxb45l38s] {
    flex: 1;
    min-width: 0;
}

.ar-panel-date[b-hgxb45l38s] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.15;
    text-transform: capitalize;
}

.ar-panel-sub[b-hgxb45l38s] {
    font-size: 12px;
    color: var(--esb-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ar-panel-datetime[b-hgxb45l38s] {
    display: flex;
    gap: 10px;
    margin-bottom: 14px;
}

.ar-panel-datetime .esb-field[b-hgxb45l38s] {
    flex: 1;
    min-width: 0;
}

.ar-slot[b-hgxb45l38s] {
    margin-bottom: 10px;
}

.ar-slot-label[b-hgxb45l38s] {
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-bottom: 4px;
}

.ar-slot-vide[b-hgxb45l38s] {
    padding: 9px 11px;
    border-radius: 11px;
    background: rgba(224, 160, 48, 0.10);
    border: 1px dashed rgba(224, 160, 48, 0.55);
    font-size: 13px;
    font-weight: 600;
    color: var(--esb-secondary);
}

.ar-slot-rempli[b-hgxb45l38s] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 6px 6px 11px;
    border-radius: 11px;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
}

.ar-slot-rempli .ar-slot-nom[b-hgxb45l38s] {
    flex: 1;
}

.ar-slot-seg[b-hgxb45l38s] {
    margin-top: 6px;
}

.ar-panel-title[b-hgxb45l38s] {
    margin: 14px 0 8px;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.ar-cand-list[b-hgxb45l38s] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    max-height: 320px;
    overflow-y: auto;
}

.ar-cand[b-hgxb45l38s] {
    display: flex;
    align-items: center;
    gap: 11px;
    width: 100%;
    padding: 8px 11px;
    border-radius: 12px;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
    font-family: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color 0.15s, transform 0.1s;
}

.ar-cand:hover[b-hgxb45l38s] {
    border-color: var(--esb-primary);
}

.ar-cand:active[b-hgxb45l38s] {
    transform: scale(0.99);
}

.ar-cand--on[b-hgxb45l38s] {
    background: var(--esb-primary-hover);
    border-color: var(--esb-primary);
}

.ar-cand-main[b-hgxb45l38s] {
    flex: 1;
    min-width: 0;
}

.ar-cand-nom[b-hgxb45l38s] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--esb-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ar-cand-tags[b-hgxb45l38s] {
    display: flex;
    gap: 4px;
    margin-top: 3px;
}

.ar-cand-load[b-hgxb45l38s] {
    flex: none;
    width: 18px;
    text-align: right;
    font-weight: 800;
    font-size: 16px;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

/* Personne qui n'a encore tenu aucun créneau : à servir en premier. */
.ar-cand-load--zero[b-hgxb45l38s] {
    color: var(--esb-secondary);
}

/* En dessous, la ligne à quatre colonnes ne tient plus : on empile. */

/* Voile de fond : rendu uniquement créneau sélectionné, masqué au-dessus du seuil. */

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .ar-layout[b-hgxb45l38s] {
        grid-template-columns: minmax(0, 1fr);
    }

    /* En une colonne, l'aside tombe après 40+ créneaux : le panneau d'attribution
       devient une feuille remontant du bas, comme sur les autres écrans. */
    .ar-panel[b-hgxb45l38s] {
        margin: 0;
        border-radius: 18px 18px 0 0;
        max-height: 82vh;
        overflow-y: auto;
        box-shadow: var(--esb-shadow-sheet);
    }
}

@media (max-width: 600px) {
    .ar-arbitre-field[b-hgxb45l38s] {
        width: 100%;
    }
}

@media (max-width: 1160px) {
    .ar-cols[b-hgxb45l38s] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        row-gap: 8px;
    }

    /* La date passe en pleine largeur : Arbitre 1 et Arbitre 2 se partagent
       alors la ligne suivante à parts égales, au lieu d'une colonne étriquée
       à 118px pendant que l'autre récupère tout le reste. */
    .ar-c-date[b-hgxb45l38s] {
        grid-column: 1 / -1;
    }

    /* Sans l'en-tête, chaque cellule arbitre porte son propre libellé. */
    .ar-cols--head[b-hgxb45l38s] {
        display: none;
    }

    .ar-c-slot[b-hgxb45l38s]::before {
        content: attr(data-slot);
        display: block;
        margin-bottom: 2px;
        font-size: 0.55rem;
        font-weight: 700;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: var(--esb-text-disabled);
    }

    .ar-c-result[b-hgxb45l38s] {
        display: block;
    }

    .ar-c-result .ar-result-nom[b-hgxb45l38s] {
        display: inline;
        margin-right: 6px;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* ── En-tête ─────────────────────────────────────────────── */
.home-head[b-tsvibae1dq] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.home-hello[b-tsvibae1dq] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 2.2rem;
    letter-spacing: -0.5px;
    line-height: 1;
    color: var(--esb-text-primary);
}

/* Puces de chiffres cles, a la place d'une ligne de texte plate : ce sont
   des donnees, elles meritent la presence d'un chiffre plutot que de se
   fondre dans une phrase. */
.home-stats[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.home-stat-chip[b-tsvibae1dq] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding: 7px 13px;
    border-radius: 999px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
}

.home-stat-chip--warn[b-tsvibae1dq] {
    background: rgba(var(--esb-secondary-rgb), 0.14);
    border-color: rgba(var(--esb-secondary-rgb), 0.45);
}

.home-stat-value[b-tsvibae1dq] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

.home-stat-chip--warn .home-stat-value[b-tsvibae1dq] {
    color: var(--esb-secondary);
}

.home-stat-label[b-tsvibae1dq] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
}

.home-stat-chip--warn .home-stat-label[b-tsvibae1dq] {
    color: var(--esb-secondary);
}

.home-day[b-tsvibae1dq] {
    font-size: 0.78rem;
    color: var(--esb-text-disabled);
    margin-left: 2px;
}

/* ── Déplacement du jour ─────────────────────────────────── */
/* Le dégradé violet de la barre latérale, pour que la carte se détache
   des surfaces neutres dans les deux thèmes : un jour de match à
   l'extérieur, l'adresse est ce qu'on vient chercher. */
.home-away[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    margin-bottom: 18px;
    border-radius: 16px;
    background: linear-gradient(160deg, var(--esb-brand-deep) 0%, var(--esb-brand) 55%, var(--esb-brand-bright) 100%);
    box-shadow: var(--esb-shadow-2), inset 0 1px 0 rgba(255, 255, 255, 0.12);
    color: #fff;
}

.home-away-pin[b-tsvibae1dq] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
}

[b-tsvibae1dq] .home-away-pin-svg {
    width: 22px;
    height: 22px;
    color: #fff;
}

.home-away-body[b-tsvibae1dq] {
    flex: 1;
    min-width: 0;
}

.home-away-kicker[b-tsvibae1dq] {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.72);
}

.home-away-address[b-tsvibae1dq] {
    margin-top: 4px;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.45rem;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.home-away-address--missing[b-tsvibae1dq] {
    font-size: 1.1rem;
    color: rgba(255, 255, 255, 0.7);
}

/* Sur place ou covoiturage depuis le gymnase : la consigne du jour, juste sous l'adresse. */
.home-away-ride[b-tsvibae1dq] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    font-size: 0.8rem;
    font-weight: 700;
}

[b-tsvibae1dq] .home-away-ride-svg {
    flex-shrink: 0;
}

.home-away-meta[b-tsvibae1dq] {
    margin-top: 4px;
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.8);
}

.home-away-go[b-tsvibae1dq] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    border-radius: 10px;
    background: #fff;
    color: var(--esb-brand);
    font-weight: 700;
    font-size: 0.85rem;
    text-decoration: none;
    white-space: nowrap;
}

.home-away-go:hover[b-tsvibae1dq] {
    background: rgba(255, 255, 255, 0.88);
}

/* Voile blanc posé en image de fond plutôt qu'en couleur : même rendu sur le dégradé de la carte
   (bordure comprise), mais l'analyse de contraste ne compare plus le texte blanc à un fond blanc
   translucide, faute de voir le violet dessous (contraste réel d'environ 7:1). */
.home-away-go--ghost[b-tsvibae1dq] {
    background: linear-gradient(rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.14));
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff;
}

.home-away-go--ghost:hover[b-tsvibae1dq] {
    background: linear-gradient(rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.22));
}

[b-tsvibae1dq] .home-away-go-svg {
    width: 16px;
    height: 16px;
}

/* ── Raccourcis ──────────────────────────────────────────── */
.home-quick[b-tsvibae1dq] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 240px));
    justify-content: start;
    gap: 12px;
    margin-bottom: 22px;
}

/* Plates, pas de bordure+ombre : ce ne sont que des raccourcis de meme
   poids, pas des cartes qui auraient besoin de faire une hierarchie. */
.home-quick-tile[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(var(--esb-primary-rgb), 0.08);
    text-decoration: none;
    color: var(--esb-text-primary);
    transition: background 0.15s, transform 0.1s;
}

.home-quick-tile:hover[b-tsvibae1dq] {
    background: rgba(var(--esb-primary-rgb), 0.14);
}

.home-quick-tile:active[b-tsvibae1dq] {
    transform: scale(0.98);
}

.home-quick-icon[b-tsvibae1dq] {
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(var(--esb-primary-rgb), 0.14);
    color: var(--esb-primary);
}

[b-tsvibae1dq] .home-quick-icon-svg {
    width: 18px;
    height: 18px;
    stroke-width: 1.9;
}

.home-quick-label[b-tsvibae1dq] {
    font-size: 0.85rem;
    font-weight: 600;
    line-height: 1.2;
}

@media (max-width: 599px) {
    .home-quick[b-tsvibae1dq] {
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 10px;
    }

    .home-quick-tile[b-tsvibae1dq] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
}

/* ── Grille principale : À traiter et Prochains événements côte à côte,
   pour ne plus avoir à défiler pour voir les deux. ─────────────────── */
.home-grid[b-tsvibae1dq] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.home-col[b-tsvibae1dq] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

@media (max-width: 1160px) {
    .home-grid[b-tsvibae1dq] {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* ── Équipes suivies : rangée pleine largeur sous les deux colonnes,
   plutôt qu'une colonne latérale étroite qui écrasait les cartes. ── */
.home-pulses-section[b-tsvibae1dq] {
    margin-top: 20px;
}

.home-pulses-section .home-section-label[b-tsvibae1dq] {
    margin-bottom: 12px;
}

.home-pulses-grid[b-tsvibae1dq] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
}

/* ── Boîte "À traiter" ───────────────────────────────────── */
.home-todo-box[b-tsvibae1dq] {
    padding: 14px;
    border-radius: 16px;
    background: rgba(var(--esb-primary-rgb), 0.08);
    border: 1px solid rgba(var(--esb-primary-rgb), 0.32);
}

.home-todo-head[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.home-todo-label[b-tsvibae1dq] {
    font-size: 0.60rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--esb-primary-lighten);
}

.home-todo-rule[b-tsvibae1dq] {
    flex: 1;
    height: 1px;
    background: var(--esb-lines-default);
}

.home-todo-count[b-tsvibae1dq] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.35rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

.home-todo-list[b-tsvibae1dq] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
}

.home-todo-empty[b-tsvibae1dq] {
    padding: 16px 2px;
    font-size: 0.82rem;
    color: var(--esb-text-secondary);
}

.home-todo-row[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 13px;
    border-radius: 12px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s, transform 0.1s;
}

.home-todo-row:hover[b-tsvibae1dq] {
    border-color: var(--esb-primary);
    box-shadow: 0 3px 10px rgba(var(--esb-primary-rgb), 0.18);
}

.home-todo-row:active[b-tsvibae1dq] {
    transform: scale(0.99);
}

.home-todo-icon[b-tsvibae1dq] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    background: rgba(var(--esb-primary-rgb), 0.10);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--esb-primary-lighten);
}

[b-tsvibae1dq] .home-todo-icon-svg {
    width: 16px;
    height: 16px;
}

.home-todo-text[b-tsvibae1dq] {
    flex: 1;
    min-width: 0;
}

.home-todo-title[b-tsvibae1dq] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.25;
    color: var(--esb-text-primary);
}

.home-todo-meta[b-tsvibae1dq] {
    display: block;
    font-size: 0.75rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.home-todo-cta[b-tsvibae1dq] {
    flex-shrink: 0;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--esb-primary-lighten);
    letter-spacing: 0.02em;
}

/* ── Carte "Prochains événements" ────────────────────────── */
.home-events-card[b-tsvibae1dq] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    overflow: hidden;
}

.home-card-head[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 18px 12px;
}

.home-card-title[b-tsvibae1dq] {
    flex: 1;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

/* La ligne ouvre le résumé des présences (PresenceResumeSheet). */
.home-ev-row[b-tsvibae1dq] {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 14px 18px;
    border-top: 1px solid var(--esb-lines-default);
    cursor: pointer;
    transition: background 0.15s ease;
}

.home-ev-row--pending[b-tsvibae1dq] {
    background: rgba(var(--esb-primary-rgb), 0.035);
}

.home-ev-row:hover[b-tsvibae1dq] {
    background: var(--esb-action-hover);
}

.home-ev-row:focus-visible[b-tsvibae1dq] {
    outline: 2px solid var(--esb-primary);
    outline-offset: -2px;
}

.home-ev-row[b-tsvibae1dq]  .home-ev-chevron {
    flex-shrink: 0;
    align-self: center;
    width: 18px;
    height: 18px;
    color: var(--esb-text-disabled);
    transition: color 0.15s ease, transform 0.15s ease;
}

.home-ev-row:hover[b-tsvibae1dq]  .home-ev-chevron {
    color: var(--esb-primary);
    transform: translateX(2px);
}

.home-ev-date[b-tsvibae1dq] {
    flex-shrink: 0;
    width: 46px;
    text-align: center;
    padding-right: 12px;
    border-right: 1px solid var(--esb-lines-default);
}

.home-ev-dow[b-tsvibae1dq] {
    display: block;
    font-size: 0.60rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.home-ev-day[b-tsvibae1dq] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.5rem;
    line-height: 1;
    letter-spacing: -0.25px;
    font-variant-numeric: tabular-nums;
    color: var(--esb-text-primary);
}

.home-ev-month[b-tsvibae1dq] {
    display: block;
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
    text-transform: uppercase;
}

.home-ev-body[b-tsvibae1dq] {
    flex: 1;
    min-width: 0;
}

.home-ev-top[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.home-ev-kind[b-tsvibae1dq] {
    flex-shrink: 0;
    border-radius: 6px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 2px 7px;
    background: rgba(var(--esb-primary-rgb), 0.10);
    color: var(--esb-primary-lighten);
}

.home-ev-kind--match[b-tsvibae1dq] {
    background: rgba(var(--esb-secondary-rgb), 0.16);
    color: var(--esb-secondary);
}

/* Ma reponse, a cote de la pastille de type : une fois repondu les boutons
   disparaissent, sans cela la ligne ne dit plus ce qu'on a repondu. */
.home-ev-mine[b-tsvibae1dq] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border-radius: 6px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 2px 7px;
}

[b-tsvibae1dq] .home-ev-mine-icon {
    width: 11px;
    height: 11px;
}

.home-ev-mine--yes[b-tsvibae1dq] {
    background: rgba(var(--esb-success-rgb), 0.14);
    color: var(--esb-success);
}

.home-ev-mine--no[b-tsvibae1dq] {
    background: rgba(var(--esb-error-rgb), 0.14);
    color: var(--esb-error);
}

.home-ev-time[b-tsvibae1dq] {
    margin-left: auto;
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    color: var(--esb-text-secondary);
}

.home-ev-title[b-tsvibae1dq] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.05rem;
    line-height: 1.2;
    letter-spacing: -0.15px;
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--esb-text-primary);
}

.home-ev-sub[b-tsvibae1dq] {
    font-size: 0.75rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    display: flex;
    gap: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-ev-presence[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 10px;
}

.home-ev-yes[b-tsvibae1dq] {
    display: flex;
    align-items: baseline;
    gap: 4px;
    flex-shrink: 0;
}

.home-ev-yes-num[b-tsvibae1dq] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.35rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

.home-ev-yes-den[b-tsvibae1dq] {
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
}

.home-ev-bar-wrap[b-tsvibae1dq] {
    flex: 1;
    min-width: 60px;
}

.home-ev-bar-labels[b-tsvibae1dq] {
    display: flex;
    gap: 10px;
    margin-top: 5px;
    font-size: 0.68rem;
    font-variant-numeric: tabular-nums;
    color: var(--esb-text-secondary);
}

.home-ev-pending[b-tsvibae1dq] {
    color: var(--esb-primary-lighten);
    font-weight: 600;
}

.home-ev-actions[b-tsvibae1dq] {
    display: flex;
    gap: 6px;
    margin-top: 10px;
}

.home-ev-btn[b-tsvibae1dq] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-family: 'Manrope', sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    min-height: 34px;
    max-width: 140px;
    border-radius: 10px;
    cursor: pointer;
    border: 1px solid var(--esb-lines-default);
    background: transparent;
    color: var(--esb-text-secondary);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.home-ev-btn:active[b-tsvibae1dq] {
    transform: scale(0.97);
}

.home-ev-btn--yes:hover[b-tsvibae1dq] {
    border-color: var(--esb-success);
    color: var(--esb-success);
}

.home-ev-btn--no:hover[b-tsvibae1dq] {
    border-color: var(--esb-error);
    color: var(--esb-error);
}

/* ── Colonne latérale ────────────────────────────────────── */
.home-section-label[b-tsvibae1dq] {
    font-size: 0.60rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.home-section-label--inset[b-tsvibae1dq] {
    padding: 0;
    margin-bottom: 8px;
}

.home-pulse-card[b-tsvibae1dq] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
}

.home-pulse-top[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.home-pulse-dot[b-tsvibae1dq] {
    flex-shrink: 0;
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.home-pulse-name[b-tsvibae1dq] {
    flex: 1;
    min-width: 0;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.2rem;
    letter-spacing: -0.15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--esb-text-primary);
}

.home-pulse-tag[b-tsvibae1dq] {
    flex-shrink: 0;
    border-radius: 6px;
    font-size: 0.68rem;
    font-weight: 700;
    padding: 2px 8px;
}

.home-pulse-tag--win[b-tsvibae1dq]  { background: rgba(var(--esb-success-rgb), 0.16); color: var(--esb-success); }
.home-pulse-tag--loss[b-tsvibae1dq] { background: rgba(var(--esb-error-rgb), 0.14);   color: var(--esb-error); }
.home-pulse-tag--draw[b-tsvibae1dq] { background: rgba(var(--esb-warning-rgb), 0.16); color: var(--esb-warning); }

.home-pulse-lastmatch[b-tsvibae1dq] {
    font-size: 0.75rem;
    color: var(--esb-text-secondary);
    margin-top: 6px;
}

.home-pulse-bottom[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
}

.home-pulse-rate[b-tsvibae1dq] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.75rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary-lighten);
}

.home-pulse-spark[b-tsvibae1dq] {
    flex: 1;
    display: flex;
    gap: 3px;
    align-items: flex-end;
    height: 34px;
}

.home-pulse-bar[b-tsvibae1dq] {
    flex: 1;
    border-radius: 2px 2px 0 0;
    background: rgba(var(--esb-primary-rgb), 0.35);
}

.home-pulse-bar--last[b-tsvibae1dq] {
    background: var(--esb-primary);
}

.home-pulse-caption[b-tsvibae1dq] {
    font-size: 0.62rem;
    color: var(--esb-text-disabled);
    margin-top: 6px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

/* ── Mes arbitrages ──────────────────────────────────────── */
.home-referee-card[b-tsvibae1dq] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
}

.home-referee-card--top[b-tsvibae1dq] {
    margin-bottom: 20px;
}

.home-referee-row[b-tsvibae1dq] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-top: 1px solid var(--esb-lines-default);
}

.home-referee-row:first-of-type[b-tsvibae1dq] {
    border-top: none;
}

.home-referee-date[b-tsvibae1dq] {
    flex-shrink: 0;
    width: 46px;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-text-primary);
}

.home-referee-text[b-tsvibae1dq] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.home-referee-match[b-tsvibae1dq] {
    font-size: 0.82rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--esb-text-primary);
}

.home-referee-team[b-tsvibae1dq] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    margin-top: 1px;
}

.home-referee-tag[b-tsvibae1dq] {
    flex-shrink: 0;
    border-radius: 6px;
    font-size: 0.68rem;
    font-weight: 700;
    padding: 2px 8px;
    background: rgba(var(--esb-primary-rgb), 0.10);
    color: var(--esb-primary-lighten);
}

/* ── État vide générique ─────────────────────────────────── */
.empty-state[b-tsvibae1dq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 0;
    opacity: 0.4;
}

/* Déplacement du jour : sur téléphone, le bouton passe sous l'adresse,
   pleine largeur, pour rester facile à toucher. */
@media (max-width: 599px) {
    .home-away[b-tsvibae1dq] {
        flex-wrap: wrap;
    }

    .home-away-go[b-tsvibae1dq] {
        flex-basis: 100%;
        box-sizing: border-box;
        justify-content: center;
    }
}
/* /Components/Pages/Matchs.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
/* ── Barre outils ────────────────────────────────────── */
.match-toolbar[b-7vkus3kfon] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.match-team-chips[b-7vkus3kfon] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.match-team-chip[b-7vkus3kfon] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-disabled);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.match-team-chip:hover[b-7vkus3kfon] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.match-team-chip:active[b-7vkus3kfon] {
    transform: scale(0.96);
}

.match-team-chip--active[b-7vkus3kfon] {
    color: var(--esb-text-primary);
    background: var(--esb-action-hover);
}

.match-team-dot[b-7vkus3kfon] {
    width: 12px;
    height: 3px;
    border-radius: 2px;
    display: inline-block;
}

/* ── Bannière résultats à saisir ─────────────────────── */
.match-missing[b-7vkus3kfon] {
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(var(--esb-warning-rgb), 0.12);
    border: 1px solid rgba(var(--esb-warning-rgb), 0.45);
}

.match-missing-head[b-7vkus3kfon] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.match-missing-label[b-7vkus3kfon] {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-warning-darken);
}

.match-missing-count[b-7vkus3kfon] {
    margin-left: auto;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.35rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-warning-darken);
}

.match-missing-list[b-7vkus3kfon] {
    display: flex;
    gap: 10px;
    margin-top: 11px;
    flex-wrap: wrap;
}

.match-missing-item[b-7vkus3kfon] {
    flex: 1;
    min-width: 220px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 12px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    cursor: pointer;
    transition: border-color 0.15s, transform 0.1s;
}

.match-missing-item:hover[b-7vkus3kfon] {
    border-color: var(--esb-warning);
}

.match-missing-item:active[b-7vkus3kfon] {
    transform: scale(0.98);
}

.match-missing-title[b-7vkus3kfon] {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.match-missing-sub[b-7vkus3kfon] {
    display: block;
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.match-missing-cta[b-7vkus3kfon] {
    margin-left: auto;
    flex: none;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--esb-warning-darken);
}

/* ── Layout deux colonnes ────────────────────────────── */
.match-layout[b-7vkus3kfon] {
    display: grid;
    /* 380 px : en dessous, nom + étiquette de convocation + boutons Présent / Absent
       ne tiennent plus sur une ligne et chaque licencié occupe deux lignes. */
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: 20px;
    align-items: start;
    margin-top: 16px;
}

/* ── Carte liste ─────────────────────────────────────── */
.match-list-card[b-7vkus3kfon] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    overflow: hidden;
}

.match-list-head[b-7vkus3kfon] {
    display: flex;
    align-items: center;
    padding: 10px 18px;
    border-bottom: 2px solid var(--esb-lines-default);
}

.match-list-col[b-7vkus3kfon] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.match-list-col--date[b-7vkus3kfon] { flex: none; width: 62px; }
.match-list-col--opp[b-7vkus3kfon] { flex: 1; }
.match-list-col--venue[b-7vkus3kfon] { flex: none; width: 92px; }
.match-list-col--score[b-7vkus3kfon] { flex: none; width: 100px; text-align: right; }
.match-list-col--last[b-7vkus3kfon] { flex: none; width: 110px; text-align: right; }
.match-list-col--answer[b-7vkus3kfon] { flex: none; width: 140px; text-align: right; }

.match-empty[b-7vkus3kfon] {
    padding: 20px 18px 24px;
    font-size: 0.8rem;
    color: var(--esb-text-disabled);
}

.match-rows[b-7vkus3kfon] {
    display: flex;
    flex-direction: column;
}

.match-row[b-7vkus3kfon] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    border-top: 1px solid var(--esb-lines-default);
    cursor: pointer;
    flex-wrap: wrap;
    transition: background 0.15s;
}

.match-row:hover[b-7vkus3kfon] {
    background: var(--esb-action-hover);
}

.match-row:active[b-7vkus3kfon] {
    background: rgba(var(--esb-primary-rgb), 0.12);
}

.match-row--selected[b-7vkus3kfon] {
    background: rgba(var(--esb-primary-rgb), 0.08);
    box-shadow: inset 2px 0 0 var(--esb-primary);
}

.match-row-date[b-7vkus3kfon] {
    flex: none;
    width: 62px;
}

.match-row-day[b-7vkus3kfon] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.15rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.match-row-month[b-7vkus3kfon] {
    display: block;
    font-size: 0.65rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    text-transform: uppercase;
}

.match-row-main[b-7vkus3kfon] {
    flex: 1;
    min-width: 140px;
}

.match-row-title[b-7vkus3kfon] {
    display: block;
    font-weight: 600;
    font-size: 0.88rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.match-row-sub[b-7vkus3kfon] {
    display: block;
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.match-row-venue-tag[b-7vkus3kfon] {
    flex: none;
    width: 92px;
    border-radius: 6px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 3px 8px;
    text-align: center;
}

.match-row-venue--home[b-7vkus3kfon] {
    background: rgba(var(--esb-success-rgb), 0.16);
    color: var(--esb-success-darken);
}

.match-row-venue--away[b-7vkus3kfon] {
    background: rgba(var(--esb-warning-rgb), 0.16);
    color: var(--esb-warning-darken);
}

.match-row-score[b-7vkus3kfon] {
    flex: none;
    width: 100px;
    text-align: right;
}

.match-row-score-val[b-7vkus3kfon] {
    display: block;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.2rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.25px;
}

.match-row-score--victoire .match-row-score-val[b-7vkus3kfon] { color: var(--esb-success); }
.match-row-score--defaite .match-row-score-val[b-7vkus3kfon] { color: var(--esb-error); }
.match-row-score--nul .match-row-score-val[b-7vkus3kfon] { color: var(--esb-warning); }
.match-row-score--attente .match-row-score-val[b-7vkus3kfon] { color: var(--esb-text-disabled); }
.match-row-score--manquant .match-row-score-val[b-7vkus3kfon] {
    color: var(--esb-warning);
    font-size: 0.78rem;
}

.match-row-outcome[b-7vkus3kfon] {
    display: block;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-top: 2px;
}

.match-row-score--victoire .match-row-outcome[b-7vkus3kfon] { color: var(--esb-success); }
.match-row-score--defaite .match-row-outcome[b-7vkus3kfon] { color: var(--esb-error); }
.match-row-score--nul .match-row-outcome[b-7vkus3kfon] { color: var(--esb-warning); }

.match-row-answer[b-7vkus3kfon] {
    flex: none;
    width: 140px;
    display: flex;
    justify-content: flex-end;
    /* Si la ligne passe quand meme a la ligne, la reponse se cale a droite. */
    margin-left: auto;
}

.match-row-last[b-7vkus3kfon] {
    flex: none;
    width: 110px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

.match-row-presence-top[b-7vkus3kfon] {
    display: flex;
    align-items: baseline;
    gap: 4px;
}

.match-row-yes[b-7vkus3kfon] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.match-row-den[b-7vkus3kfon] {
    font-size: 0.66rem;
    color: var(--esb-text-secondary);
}

/* La barre est rendue par EsbPresenceBar : son <div> ne porte pas l'attribut de
   scope de cette page, d'où le ::deep. Sans largeur, elle tombe à zéro dans une
   colonne flex alignée à droite. */
.match-row-last[b-7vkus3kfon]  .esb-presbar {
    width: 88px;
}

.match-row-past[b-7vkus3kfon] {
    font-size: 0.75rem;
    color: var(--esb-text-secondary);
}

/* ── Panneau latéral ─────────────────────────────────── */
/* Fond opaque obligatoire : sous 1160 px le panneau devient une feuille
   posée sur la liste, et sans surface les deux textes se superposent. */
.match-panel[b-7vkus3kfon] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 16px 18px;
}

.match-summary[b-7vkus3kfon] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Cartes statistiques saison ──────────────────────── */
.match-stat-card[b-7vkus3kfon] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 15px 16px;
}

.match-stat-title[b-7vkus3kfon] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.match-record[b-7vkus3kfon] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 10px;
    flex-wrap: wrap;
}

.match-record-w[b-7vkus3kfon] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 2.2rem;
    line-height: 1;
    letter-spacing: -0.5px;
    font-variant-numeric: tabular-nums;
    color: var(--esb-success);
}

.match-record-sep[b-7vkus3kfon] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.3rem;
    line-height: 1;
    color: var(--esb-text-disabled);
}

.match-record-l[b-7vkus3kfon] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 2.2rem;
    line-height: 1;
    letter-spacing: -0.5px;
    font-variant-numeric: tabular-nums;
    color: var(--esb-error);
}

.match-record-pct[b-7vkus3kfon] {
    margin-left: auto;
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
}

.match-form[b-7vkus3kfon] {
    display: flex;
    gap: 4px;
    margin-top: 14px;
    max-width: 340px;
}

.match-form-item[b-7vkus3kfon] {
    flex: 1;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 0.9rem;
    color: #fff;
}

.match-form-item--victoire[b-7vkus3kfon] { background: var(--esb-success); }
.match-form-item--defaite[b-7vkus3kfon] { background: var(--esb-error); }
.match-form-item--nul[b-7vkus3kfon] { background: var(--esb-warning); }

.match-form-hint[b-7vkus3kfon] {
    font-size: 0.62rem;
    color: var(--esb-text-disabled);
    margin-top: 7px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.match-pts-row[b-7vkus3kfon] {
    display: flex;
    gap: 14px;
    margin-top: 12px;
}

.match-pts-item[b-7vkus3kfon] {
    flex: 1;
}

.match-pts-value[b-7vkus3kfon] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.6rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.match-pts-value--for[b-7vkus3kfon] { color: var(--esb-primary); }
.match-pts-value--against[b-7vkus3kfon] { color: var(--esb-text-secondary); }

.match-pts-label[b-7vkus3kfon] {
    font-size: 0.62rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 3px;
}

.match-diffbars[b-7vkus3kfon] {
    display: flex;
    gap: 3px;
    align-items: flex-end;
    height: 46px;
    margin-top: 14px;
    max-width: 340px;
}

.match-diffbar-track[b-7vkus3kfon] {
    flex: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.match-diffbar-fill[b-7vkus3kfon] {
    width: 100%;
    min-height: 3px;
    border-radius: 3px 3px 0 0;
}

.match-diffbar-fill--victoire[b-7vkus3kfon] { background: var(--esb-success); }
.match-diffbar-fill--defaite[b-7vkus3kfon] { background: var(--esb-error); }
.match-diffbar-fill--nul[b-7vkus3kfon] { background: var(--esb-warning); }

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .match-layout[b-7vkus3kfon] {
        grid-template-columns: minmax(0, 1fr);
    }

    .match-summary[b-7vkus3kfon] {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        align-items: start;
    }

    .match-panel[b-7vkus3kfon] {
        display: none;
        border-radius: 18px 18px 0 0;
        max-height: 80vh;
        overflow-y: auto;
        box-shadow: var(--esb-shadow-sheet);
        padding: 16px 16px 20px;
    }

    .match-panel--open[b-7vkus3kfon] {
        display: block;
    }
}

/* Deux situations ou la ligne ne tient plus sur un rang : la fenetre est
   etroite, ou le panneau ouvert lui prend 380 px. Le compteur de presences
   saute alors — il est repris dans le panneau — au profit de « Ma reponse »,
   qui est actionnable. Meme choix que la liste des entrainements. */
@media (max-width: 900px), (min-width: 1161px) and (max-width: 1400px) {
    .match-list-col--last[b-7vkus3kfon],
    .match-row-last[b-7vkus3kfon] {
        display: none;
    }
}

/* Plus bas, la ligne passe en deux lignes malgre tout : un en-tete de colonnes
   n'a plus rien a aligner, et ses libelles se chevauchaient faute de largeur.
   Le seuil est pris legerement au-dessus du point de rupture reel (~748 px) :
   mieux vaut un en-tete masque un peu tot qu'un en-tete desaligne. */
@media (max-width: 780px) {
    .match-list-head[b-7vkus3kfon] {
        display: none;
    }
}

@media (max-width: 600px) {
    .match-row[b-7vkus3kfon] {
        gap: 8px;
        padding: 11px 14px;
    }

    .match-row-sub[b-7vkus3kfon] {
        display: none;
    }
}
/* /Components/Pages/MonCompte.razor.rz.scp.css */
.mc-root[b-jyqrww3vex] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.mc-header[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.mc-avatar-wrap[b-jyqrww3vex] {
    position: relative;
    flex: none;
}

[b-jyqrww3vex] .mc-avatar {
    width: 84px;
    height: 84px;
    font-size: 2rem;
}

[b-jyqrww3vex] .mc-avatar-upload {
    position: absolute;
    right: -4px;
    bottom: -4px;
}

[b-jyqrww3vex] .mc-avatar-btn {
    box-shadow: var(--esb-shadow-2);
}

.mc-header-info[b-jyqrww3vex] {
    flex: 1;
    min-width: 200px;
}

.mc-fullname[b-jyqrww3vex] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.9rem;
    letter-spacing: -0.25px;
    line-height: 1.1;
}

.mc-header-tags[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    flex-wrap: wrap;
}

.mc-maillot-tag[b-jyqrww3vex] {
    border-radius: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 8px;
    background: rgba(var(--esb-primary-rgb), 0.14);
    color: var(--esb-primary);
}

.mc-subline[b-jyqrww3vex] {
    font-size: 0.8rem;
    color: var(--esb-text-secondary);
    margin-top: 6px;
}

.mc-header-actions[b-jyqrww3vex] {
    flex: none;
}

.mc-dirty-bar[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 13px;
    background: rgba(var(--esb-warning-rgb), 0.13);
    border: 1px solid rgba(var(--esb-warning-rgb), 0.40);
    max-width: 420px;
}

.mc-dirty-label[b-jyqrww3vex] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--esb-warning-darken);
    line-height: 1.3;
}

.mc-saved-bar[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 13px;
    background: rgba(var(--esb-success-rgb), 0.13);
    border: 1px solid rgba(var(--esb-success-rgb), 0.40);
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--esb-success-darken);
}

.mc-tabs[b-jyqrww3vex] {
    display: none;
    gap: 6px;
    padding: 3px;
    border-radius: 12px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
}

.mc-tab[b-jyqrww3vex] {
    flex: 1;
    min-height: 34px;
    border-radius: 9px;
    border: none;
    cursor: pointer;
    background: transparent;
    color: var(--esb-text-secondary);
    font-family: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    transition: background 0.15s, color 0.15s;
}

.mc-tab:active[b-jyqrww3vex] {
    opacity: 0.8;
}

.mc-tab--active[b-jyqrww3vex] {
    background: var(--esb-primary);
    color: var(--esb-primary-text);
}

.mc-grid[b-jyqrww3vex] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.mc-col[b-jyqrww3vex] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

.mc-donnees-texte[b-jyqrww3vex] {
    margin: 0 0 14px;
    font-size: 0.85rem;
    line-height: 1.6;
    color: var(--esb-text-secondary);
}

.mc-donnees-contact[b-jyqrww3vex] {
    color: var(--esb-primary);
    font-weight: 600;
    overflow-wrap: anywhere;
}

/* LiensLegaux est un composant : sa classe n'a pas l'attribut de portée */
[b-jyqrww3vex] .mc-donnees-liens {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--esb-primary);
}

.mc-field[b-jyqrww3vex] {
    border-radius: 13px;
    padding: 6px 10px 0;
    transition: background .15s ease, border-color .15s ease;
    border: 1px solid transparent;
}

.mc-field--changed[b-jyqrww3vex] {
    background: rgba(var(--esb-primary-rgb), 0.08);
    border-color: var(--esb-primary);
}

[b-jyqrww3vex] .mc-group-label {
    display: block;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--esb-text-secondary);
}

.mc-chips[b-jyqrww3vex] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 9px;
}

.mc-chip[b-jyqrww3vex] {
    font-family: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    cursor: pointer;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-secondary);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.mc-chip:hover[b-jyqrww3vex] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.mc-chip:active[b-jyqrww3vex] {
    transform: scale(0.96);
}

.mc-chip--active[b-jyqrww3vex] {
    background: rgba(var(--esb-primary-rgb), 0.12);
    border-color: var(--esb-primary);
    color: var(--esb-primary);
}

.mc-switch-list[b-jyqrww3vex] {
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-top: 9px;
}

.mc-switch-row[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 8px 12px;
    border-radius: 13px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
}

.mc-switch-row--on[b-jyqrww3vex] {
    background: rgba(var(--esb-primary-rgb), 0.08);
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.mc-switch-row--secondary.mc-switch-row--on[b-jyqrww3vex] {
    background: rgba(var(--esb-secondary-rgb), 0.10);
    border-color: rgba(var(--esb-secondary-rgb), 0.45);
}

.mc-switch-text[b-jyqrww3vex] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.mc-switch-label[b-jyqrww3vex] {
    font-size: 0.85rem;
    font-weight: 500;
}

.mc-switch-hint[b-jyqrww3vex] {
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.mc-strength[b-jyqrww3vex] {
    margin-top: 13px;
    padding: 12px 13px;
    border-radius: 14px;
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
}

.mc-strength-head[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: var(--esb-text-secondary);
}

.mc-strength-label[b-jyqrww3vex] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: normal;
}

.mc-strength-bars[b-jyqrww3vex] {
    display: flex;
    gap: 4px;
    margin-top: 9px;
}

.mc-strength-bar[b-jyqrww3vex] {
    flex: 1;
    height: 5px;
    border-radius: 3px;
    background: rgba(var(--esb-primary-rgb), 0.14);
}

.mc-strength-rules[b-jyqrww3vex] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 12px;
    margin-top: 11px;
}

.mc-strength-rule[b-jyqrww3vex] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.72rem;
    color: var(--esb-text-disabled);
}

.mc-strength-rule--ok[b-jyqrww3vex] {
    color: var(--esb-text-secondary);
    font-weight: 600;
}

.mc-strength-dot[b-jyqrww3vex] {
    flex: none;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--esb-text-disabled);
}

.mc-strength-dot--ok[b-jyqrww3vex] {
    background: var(--esb-success);
}

@media (max-width: 1160px) {
    .mc-tabs[b-jyqrww3vex] {
        display: flex;
    }

    .mc-grid[b-jyqrww3vex] {
        display: block;
    }

    .mc-section[b-jyqrww3vex] {
        display: none;
    }

    .mc-section--active[b-jyqrww3vex] {
        display: block;
    }

    .mc-section + .mc-section[b-jyqrww3vex] {
        margin-top: 20px;
    }
}

.mc-col-canal[b-jyqrww3vex] { flex: none; width: 70px; }

[b-jyqrww3vex] .mc-avatar-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

/* Le libellé du type doit pouvoir passer à la ligne */
.mc-pref-tbl .esb-tbl-cell[b-jyqrww3vex] {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

/* En-tête de colonne cliquable : coche ou décoche tout le canal. */
.mc-col-toggle[b-jyqrww3vex] {
    display: block;
    width: 100%;
    padding: 0;
    border: none;
    background: none;
    font: inherit;
    color: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
    cursor: pointer;
    transition: color 0.15s;
}

.mc-col-toggle:hover[b-jyqrww3vex] {
    color: var(--esb-primary);
}

.mc-col-toggle:active[b-jyqrww3vex] {
    opacity: 0.75;
}

/* Total personnel de créneaux d'arbitrage tenus dans la saison. */
.mc-arb-count[b-jyqrww3vex] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 10px;
    padding: 10px 12px;
    border-radius: 13px;
    background: var(--esb-background-grey);
    border: 1px solid var(--esb-lines-default);
}

.mc-arb-count-value[b-jyqrww3vex] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-size: 26px;
    font-weight: 800;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.mc-arb-count-label[b-jyqrww3vex] {
    font-size: 12px;
    color: var(--esb-text-secondary);
}
/* /Components/Pages/NouvelEvenement.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
.ne-topbar[b-dnslq6yh3i] {
    display: flex;
    align-items: center;
    gap: 8px;
}

[b-dnslq6yh3i] .ne-back-btn {
    flex: none;
    margin-top: 2px;
}

.ne-topbar-text[b-dnslq6yh3i] {
    min-width: 0;
}

.ne-topbar-sub[b-dnslq6yh3i] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

/* ── Cartes ──────────────────────────────────────────── */
.ne-card[b-dnslq6yh3i] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
}

.ne-card + .ne-card[b-dnslq6yh3i] {
    margin-top: 16px;
}

.ne-field-label[b-dnslq6yh3i] {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-bottom: 6px;
}

.ne-field-error[b-dnslq6yh3i] {
    font-size: 0.72rem;
    color: var(--esb-error);
    margin-top: 4px;
}

/* ── Layout deux colonnes ────────────────────────────── */
.ne-grid[b-dnslq6yh3i] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 20px;
    align-items: start;
}

.ne-grid > *[b-dnslq6yh3i] {
    min-width: 0;
}

/* ── Cartes type (Entraînement / Match) ──────────────── */
.ne-type-cards[b-dnslq6yh3i] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.ne-type-card[b-dnslq6yh3i] {
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: left;
    font-family: inherit;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid var(--esb-lines-default);
    background: transparent;
    color: var(--esb-text-primary);
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.ne-type-card:hover[b-dnslq6yh3i] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.ne-type-card:active[b-dnslq6yh3i] {
    transform: scale(0.98);
}

.ne-type-card--active[b-dnslq6yh3i] {
    border-color: var(--esb-primary);
    background: rgba(var(--esb-primary-rgb), 0.08);
}

.ne-type-card-text[b-dnslq6yh3i] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.ne-type-card-title[b-dnslq6yh3i] {
    font-weight: 700;
    font-size: 0.88rem;
}

.ne-type-card-note[b-dnslq6yh3i] {
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
}

/* ── Chips génériques (équipe / lieu / heure) ────────── */
.ne-chip-row[b-dnslq6yh3i] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.ne-chip[b-dnslq6yh3i] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    min-height: 32px;
    padding: 0 14px;
    border-radius: 999px;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-secondary);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.ne-chip:hover[b-dnslq6yh3i] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.ne-chip:active[b-dnslq6yh3i] {
    transform: scale(0.96);
}

.ne-chip--active[b-dnslq6yh3i] {
    color: var(--esb-primary-text);
    background: var(--esb-primary);
    border-color: var(--esb-primary);
}

/* ── Bande de dates ──────────────────────────────────── */
.ne-day-strip[b-dnslq6yh3i] {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding-bottom: 4px;
}

.ne-day-chip[b-dnslq6yh3i] {
    flex: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    font-family: inherit;
    min-width: 48px;
    padding: 8px 6px;
    border-radius: 12px;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-primary);
    transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.ne-day-chip:hover[b-dnslq6yh3i] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.ne-day-chip:active[b-dnslq6yh3i] {
    transform: scale(0.94);
}

.ne-day-chip--active[b-dnslq6yh3i] {
    background: var(--esb-primary);
    border-color: var(--esb-primary);
    color: var(--esb-primary-text);
}

.ne-day-chip-dow[b-dnslq6yh3i] {
    font-size: 0.62rem;
    text-transform: uppercase;
    opacity: 0.8;
}

.ne-day-chip-num[b-dnslq6yh3i] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.15rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.ne-day-chip-month[b-dnslq6yh3i] {
    font-size: 0.62rem;
    text-transform: capitalize;
    opacity: 0.8;
}

.ne-date-summary[b-dnslq6yh3i] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 8px;
}

/* ── Récurrence ──────────────────────────────────────── */
.ne-repeat-row[b-dnslq6yh3i] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding: 8px 10px;
    border-radius: 12px;
    border: 1px solid var(--esb-lines-default);
}

.ne-repeat-row--on[b-dnslq6yh3i] {
    border-color: var(--esb-primary);
    background: rgba(var(--esb-primary-rgb), 0.06);
}

.ne-repeat-text[b-dnslq6yh3i] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    cursor: pointer;
}

.ne-repeat-title[b-dnslq6yh3i] {
    font-weight: 600;
    font-size: 0.84rem;
}

.ne-repeat-hint[b-dnslq6yh3i] {
    font-size: 0.68rem;
    color: var(--esb-text-secondary);
}

/* ── Match lié (aller / retour) ──────────────────────── */
.ne-pendant[b-dnslq6yh3i] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
    margin-top: 10px;
}

.ne-pendant-wide[b-dnslq6yh3i] {
    grid-column: 1 / -1;
}

.ne-weeks-row[b-dnslq6yh3i] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    padding-left: 4px;
}

.ne-weeks-label[b-dnslq6yh3i] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    font-variant-numeric: tabular-nums;
    min-width: 52px;
    text-align: center;
}

.ne-weeks-end[b-dnslq6yh3i] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
}

/* ── Récapitulatif ───────────────────────────────────── */
.ne-recap-card[b-dnslq6yh3i] {
    border: 1px solid var(--esb-lines-default);
}

.ne-recap-card--valid[b-dnslq6yh3i] {
    border-color: var(--esb-primary);
}

.ne-recap-head[b-dnslq6yh3i] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.ne-recap-head-text[b-dnslq6yh3i] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.ne-recap-title[b-dnslq6yh3i] {
    font-weight: 700;
    font-size: 0.94rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ne-recap-sub[b-dnslq6yh3i] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.ne-recap-meta[b-dnslq6yh3i] {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--esb-lines-default);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ne-recap-meta-row[b-dnslq6yh3i] {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.76rem;
}

.ne-recap-meta-label[b-dnslq6yh3i] {
    color: var(--esb-text-secondary);
}

.ne-recap-meta-value[b-dnslq6yh3i] {
    font-weight: 600;
    text-align: right;
}

.ne-occ-head[b-dnslq6yh3i] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--esb-lines-default);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.ne-occ-count[b-dnslq6yh3i] {
    text-transform: none;
    font-weight: 600;
    color: var(--esb-text-primary);
}

.ne-occ-list[b-dnslq6yh3i] {
    max-height: 220px;
    overflow-y: auto;
    margin-top: 6px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ne-occ-row[b-dnslq6yh3i] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 2px;
    font-size: 0.76rem;
}

.ne-occ-index[b-dnslq6yh3i] {
    font-variant-numeric: tabular-nums;
    color: var(--esb-text-disabled);
    width: 20px;
}

.ne-occ-label[b-dnslq6yh3i] {
    flex: 1;
    text-transform: capitalize;
}

.ne-occ-flag[b-dnslq6yh3i] {
    flex: none;
    font-size: 0.64rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(var(--esb-error-rgb), 0.12);
    color: var(--esb-error);
}

.ne-occ-row--clash .ne-occ-label[b-dnslq6yh3i] {
    color: var(--esb-error);
}

.ne-conflict-note[b-dnslq6yh3i] {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--esb-lines-default);
    font-size: 0.72rem;
    color: var(--esb-error);
    line-height: 1.4;
}

/* ── Effets à la création ────────────────────────────── */
.ne-effects-title[b-dnslq6yh3i] {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-bottom: 8px;
}

.ne-effect-row[b-dnslq6yh3i] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.78rem;
    padding: 4px 0;
    color: var(--esb-text-secondary);
}

.ne-effect-row[b-dnslq6yh3i]  .esb-chip-icon {
    flex: none;
    margin-top: 2px;
    color: var(--esb-primary);
}

/* ── Bouton de soumission ────────────────────────────── */
.ne-submit-btn[b-dnslq6yh3i] {
    margin-top: 16px;
}

.ne-submit-btn--invalid[b-dnslq6yh3i] {
    opacity: 0.7;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    /* minmax(0, …) et non 1fr : sinon la piste ne peut pas descendre
       sous la largeur min-content de la bande de dates. */
    .ne-grid[b-dnslq6yh3i] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Pages/Planification.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
/* ── Filtres équipe ──────────────────────────────────── */
.plan-team-chips[b-lwt6gy7u8u] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.plan-team-chip[b-lwt6gy7u8u] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
    font-size: 0.78rem;
    font-weight: 600;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-disabled);
    transition: border-color 0.15s, background 0.15s, color 0.15s, transform 0.1s;
}

.plan-team-chip:hover[b-lwt6gy7u8u] {
    border-color: rgba(var(--esb-primary-rgb), 0.45);
}

.plan-team-chip:active[b-lwt6gy7u8u] {
    transform: scale(0.96);
}

.plan-team-chip--active[b-lwt6gy7u8u] {
    color: var(--esb-text-primary);
    background: var(--esb-action-hover);
}

.plan-team-dot[b-lwt6gy7u8u] {
    width: 12px;
    height: 3px;
    border-radius: 2px;
    display: inline-block;
}

/* ── Layout deux colonnes ────────────────────────────── */
.plan-layout[b-lwt6gy7u8u] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 322px;
    gap: 20px;
    align-items: start;
}

/* ── Carte calendrier ────────────────────────────────── */
.plan-calendar-card[b-lwt6gy7u8u] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px;
}

.plan-nav[b-lwt6gy7u8u] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.plan-today-btn[b-lwt6gy7u8u] {
    border: 1px solid var(--esb-lines-default);
    border-radius: 12px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 600;
    background: transparent;
    color: var(--esb-text-secondary);
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, transform 0.1s;
}

.plan-today-btn:hover[b-lwt6gy7u8u] {
    background: var(--esb-action-hover);
}

.plan-today-btn:active[b-lwt6gy7u8u] {
    transform: scale(0.96);
}

.plan-nav-month[b-lwt6gy7u8u] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.15rem;
    min-width: 150px;
    text-align: center;
    text-transform: capitalize;
}

.plan-grid-head[b-lwt6gy7u8u] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.plan-grid-head-cell[b-lwt6gy7u8u] {
    text-align: left;
    padding: 0 6px 6px;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.plan-grid-days[b-lwt6gy7u8u] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 4px;
}

.plan-day[b-lwt6gy7u8u] {
    min-height: 96px;
    padding: 7px 6px;
    border-radius: 12px;
    box-sizing: border-box;
    cursor: pointer;
    transition: background 0.12s;
}

.plan-day:hover[b-lwt6gy7u8u] {
    background: var(--esb-action-hover);
}

.plan-day:active[b-lwt6gy7u8u] {
    background: rgba(var(--esb-primary-rgb), 0.14);
}

.plan-day--other[b-lwt6gy7u8u] {
    opacity: 0.4;
}

.plan-day--selected[b-lwt6gy7u8u] {
    background: rgba(var(--esb-primary-rgb), 0.10);
    box-shadow: inset 0 0 0 1px var(--esb-primary);
}

.plan-day-num[b-lwt6gy7u8u] {
    font-size: 0.80rem;
    font-variant-numeric: tabular-nums;
    width: 22px;
    height: 22px;
    line-height: 22px;
    text-align: center;
}

.plan-day--today .plan-day-num[b-lwt6gy7u8u] {
    background: var(--esb-primary);
    color: var(--esb-primary-text);
    border-radius: 50%;
    font-weight: 700;
}

.plan-day-events[b-lwt6gy7u8u] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 5px;
}

.plan-day-chip[b-lwt6gy7u8u] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 0.66rem;
    padding: 3px 6px;
    border-radius: 6px;
    background: var(--esb-action-hover);
    min-width: 0;
}

.plan-day-dot[b-lwt6gy7u8u] {
    flex: none;
    width: 6px;
    height: 6px;
    border-radius: 50%;
}

.plan-day-chip-time[b-lwt6gy7u8u] {
    flex: none;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
}

.plan-day-chip-title[b-lwt6gy7u8u] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Créneau d'arbitrage : le fond et la pastille creuse le distinguent d'un événement,
   la couleur seule ne suffirait pas sur une puce de 0.66rem */
.plan-day-chip--arb[b-lwt6gy7u8u] {
    background: rgba(var(--esb-info-rgb), 0.14);
}

.plan-day-dot--ring[b-lwt6gy7u8u] {
    width: 8px;
    height: 8px;
    box-sizing: border-box;
    border: 2px solid transparent;
}

.plan-day-more[b-lwt6gy7u8u] {
    font-size: 0.62rem;
    color: var(--esb-text-disabled);
    padding-left: 3px;
}

/* ── Colonne latérale ────────────────────────────────── */
.plan-side[b-lwt6gy7u8u] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.plan-daycard[b-lwt6gy7u8u] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 15px 16px;
}

.plan-daycard-head[b-lwt6gy7u8u] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.plan-daycard-title[b-lwt6gy7u8u] {
    flex: 1;
    min-width: 0;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.25rem;
    letter-spacing: -0.25px;
}

.plan-daycard-count[b-lwt6gy7u8u] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
}

[b-lwt6gy7u8u] .plan-daycard-close {
    margin: -6px -6px -6px 0;
}

.plan-empty[b-lwt6gy7u8u] {
    padding: 16px 0 4px;
    font-size: 0.8rem;
    color: var(--esb-text-disabled);
    line-height: 1.5;
}

.plan-event-list[b-lwt6gy7u8u] {
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-top: 12px;
}

.plan-event-card[b-lwt6gy7u8u] {
    background: var(--esb-background);
    border: 1px solid var(--esb-lines-default);
    border-radius: 14px;
    padding: 12px 13px;
    cursor: pointer;
    transition: border-color 0.15s, transform 0.1s;
}

.plan-event-card:hover[b-lwt6gy7u8u] {
    border-color: var(--esb-primary);
}

.plan-event-card:active[b-lwt6gy7u8u] {
    transform: scale(0.99);
}

.plan-event-top[b-lwt6gy7u8u] {
    display: flex;
    align-items: center;
    gap: 7px;
}

.plan-event-kind[b-lwt6gy7u8u] {
    flex: none;
    border-radius: 6px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 2px 7px;
    background: rgba(var(--esb-primary-rgb), 0.12);
    color: var(--esb-primary);
}

.plan-event-kind--match[b-lwt6gy7u8u] {
    background: rgba(var(--esb-warning-rgb), 0.16);
    color: var(--esb-warning-darken);
}

.plan-event-kind--arb[b-lwt6gy7u8u] {
    background: rgba(var(--esb-info-rgb), 0.16);
    color: var(--esb-info);
}

/* Aucun panneau ne s'ouvre derrière un créneau : ni curseur ni survol de carte cliquable */
.plan-event-card--arb[b-lwt6gy7u8u] {
    cursor: default;
}

.plan-event-card--arb:hover[b-lwt6gy7u8u] {
    border-color: var(--esb-lines-default);
}

.plan-event-time[b-lwt6gy7u8u] {
    margin-left: auto;
    font-size: 0.72rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--esb-text-secondary);
}

.plan-event-title[b-lwt6gy7u8u] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: -0.25px;
    margin-top: 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.plan-event-sub[b-lwt6gy7u8u] {
    font-size: 0.72rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.plan-event-stats[b-lwt6gy7u8u] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 10px;
}

.plan-event-yes[b-lwt6gy7u8u] {
    display: flex;
    align-items: baseline;
    gap: 3px;
    flex: none;
}

.plan-event-yes-num[b-lwt6gy7u8u] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.25rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.plan-event-yes-den[b-lwt6gy7u8u] {
    font-size: 0.66rem;
    color: var(--esb-text-secondary);
}

.plan-event-bar-wrap[b-lwt6gy7u8u] {
    flex: 1;
    min-width: 0;
}

.plan-event-pending[b-lwt6gy7u8u] {
    font-size: 0.62rem;
    margin-top: 4px;
    color: var(--esb-text-disabled);
}

.plan-event-pending--warn[b-lwt6gy7u8u] {
    color: var(--esb-primary);
    font-weight: 600;
}

/* ── Charge du mois ──────────────────────────────────── */
.plan-stats-card[b-lwt6gy7u8u] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 15px 16px;
}

.plan-stats-title[b-lwt6gy7u8u] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

/* Quatre mesures dans une colonne latérale étroite : en une seule rangée, « Entraînements »
   déborde de ses 62 px. Deux par deux, chaque libellé tient. */
.plan-stats-row[b-lwt6gy7u8u] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
    margin-top: 12px;
}

.plan-stat[b-lwt6gy7u8u] {
    flex: 1;
    min-width: 0;
}

.plan-stat-value[b-lwt6gy7u8u] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.6rem;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.plan-stat-label[b-lwt6gy7u8u] {
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
    margin-top: 3px;
}

.plan-weekbars[b-lwt6gy7u8u] {
    display: flex;
    gap: 4px;
    align-items: flex-end;
    height: 44px;
    margin-top: 16px;
}

.plan-weekbar[b-lwt6gy7u8u] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    height: 100%;
}

.plan-weekbar-fill[b-lwt6gy7u8u] {
    width: 100%;
    min-height: 3px;
    border-radius: 3px 3px 0 0;
    background: rgba(var(--esb-primary-rgb), 0.35);
}

.plan-weekbar-fill--max[b-lwt6gy7u8u] {
    background: var(--esb-primary);
}

.plan-weekbar-label[b-lwt6gy7u8u] {
    font-size: 0.58rem;
    color: var(--esb-text-disabled);
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier : à spécificité égale, la
   dernière règle gagne, sinon les styles de base annulent
   silencieusement les adaptations ci-dessous.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1160px) {
    .plan-layout[b-lwt6gy7u8u] {
        grid-template-columns: minmax(0, 1fr);
    }

    .plan-stats-card[b-lwt6gy7u8u] {
        display: none;
    }

    .plan-daycard[b-lwt6gy7u8u] {
        display: none;
        border-radius: 18px 18px 0 0;
        max-height: 70vh;
        overflow-y: auto;
        box-shadow: var(--esb-shadow-sheet);
        padding: 14px 16px 20px;
    }

    .plan-daycard--open[b-lwt6gy7u8u] {
        display: block;
    }
}

@media (max-width: 600px) {
    .plan-nav-month[b-lwt6gy7u8u] {
        min-width: 110px;
        font-size: 1rem;
    }

    .plan-day[b-lwt6gy7u8u] {
        min-height: 60px;
    }

    .plan-day-chip-time[b-lwt6gy7u8u] {
        display: none;
    }
}
/* /Components/Pages/Shared/ClassementBareme.razor.rz.scp.css */
.bar-card[b-dopbd5utjs] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
}

.bar-titre[b-dopbd5utjs] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--esb-text-disabled);
    margin-bottom: 10px;
}

.bar-intro[b-dopbd5utjs] {
    font-size: 0.74rem;
    line-height: 1.5;
    color: var(--esb-text-secondary);
    padding-bottom: 14px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.bar-groupe[b-dopbd5utjs] {
    margin-top: 16px;
}

.bar-groupe-titre[b-dopbd5utjs] {
    font-size: 0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--esb-primary);
}

.bar-groupe-note[b-dopbd5utjs] {
    font-size: 0.7rem;
    line-height: 1.45;
    color: var(--esb-text-disabled);
    margin-top: 3px;
}

.bar-ligne[b-dopbd5utjs] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.bar-ligne:last-child[b-dopbd5utjs] {
    border-bottom: none;
}

.bar-ligne-texte[b-dopbd5utjs] {
    min-width: 0;
}

.bar-ligne-label[b-dopbd5utjs] {
    font-size: 0.78rem;
    color: var(--esb-text-primary);
}

.bar-ligne-explication[b-dopbd5utjs] {
    font-size: 0.68rem;
    line-height: 1.4;
    color: var(--esb-text-disabled);
    margin-top: 2px;
}

.bar-ligne-valeur[b-dopbd5utjs] {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 0.85rem;
    font-variant-numeric: tabular-nums;
}

.bar-ligne-valeur--positif[b-dopbd5utjs] { color: var(--esb-success); }
.bar-ligne-valeur--negatif[b-dopbd5utjs] { color: var(--esb-error); }

.bar-ligne-valeur--neutre[b-dopbd5utjs] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--esb-text-secondary);
}
/* /Components/Pages/Shared/ClassementDetailPoints.razor.rz.scp.css */
.det-titre[b-4zw16e1582] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--esb-text-disabled);
    margin-bottom: 10px;
}

.det-ligne[b-4zw16e1582] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid var(--esb-lines-default);
}

.det-ligne:last-child[b-4zw16e1582] {
    border-bottom: none;
}

.det-texte[b-4zw16e1582] {
    flex: 1;
    min-width: 0;
}

.det-label[b-4zw16e1582] {
    font-size: 0.8rem;
}

.det-regle[b-4zw16e1582] {
    font-size: 0.68rem;
    color: var(--esb-text-disabled);
    margin-top: 1px;
}

.det-valeur[b-4zw16e1582] {
    flex-shrink: 0;
    font-weight: 800;
    font-size: 0.95rem;
    font-variant-numeric: tabular-nums;
}

.det-valeur--positif[b-4zw16e1582] { color: var(--esb-success); }
.det-valeur--negatif[b-4zw16e1582] { color: var(--esb-error); }
.det-valeur--neutre[b-4zw16e1582]  { color: var(--esb-text-secondary); }
/* /Components/Pages/Shared/ClassementGestion.razor.rz.scp.css */
/* Podium et colonnes du tableau complet. */
.cl-podium-tally[b-m7qkto5ida] {
    font-size: 0.7rem;
    color: var(--esb-text-secondary);
    margin-top: 4px;
}

.cl-col-rank[b-m7qkto5ida]   { flex: none; width: 42px; }

.cl-col-niveau[b-m7qkto5ida] { flex: none; width: 120px; }

.cl-col-pts[b-m7qkto5ida]    { flex: none; width: 80px; }

.cl-col-tally[b-m7qkto5ida]  { flex: none; width: 130px; }

.cl-col-tally--matchs[b-m7qkto5ida] { flex: none; width: 130px; }

.cl-col-streak[b-m7qkto5ida] { flex: none; width: 90px; }

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — en fin de fichier, cf. CLAUDE.md.
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 1400px) {
    .cl-col-tally[b-m7qkto5ida] {
        width: 104px;
    }
}

@media (max-width: 1250px) {
    .cl-col-tally--matchs[b-m7qkto5ida] {
        display: none;
    }
}

@media (max-width: 1100px) {
    .cl-col-streak[b-m7qkto5ida],
    .cl-col-niveau[b-m7qkto5ida] {
        display: none;
    }
}
/* /Components/Pages/Shared/ClassementMonScore.razor.rz.scp.css */
/* Carte de score de l'utilisateur connecté. */
.cl-moi[b-zgxcwl5oge] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    border-radius: 16px;
    box-shadow: var(--esb-shadow);
    padding: 18px 20px;
}

.cl-moi-head[b-zgxcwl5oge] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--esb-lines-default);
}

.cl-moi-rang[b-zgxcwl5oge] {
    flex: none;
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 1.6rem;
    font-variant-numeric: tabular-nums;
    color: var(--esb-text-secondary);
}

.cl-moi-ident[b-zgxcwl5oge] {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.cl-moi-nom[b-zgxcwl5oge] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 700;
    font-size: 1.25rem;
}

.cl-moi-pts[b-zgxcwl5oge] {
    flex: none;
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.cl-moi-pts-val[b-zgxcwl5oge] {
    font-family: 'Barlow Condensed', Roboto, sans-serif;
    font-weight: 800;
    font-size: 2rem;
    font-variant-numeric: tabular-nums;
    color: var(--esb-primary);
}

.cl-moi-tally[b-zgxcwl5oge] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 14px 0 18px;
}

/* Modificateur plutôt que la classe utilitaire .esb-tx-error : celle-ci est
   globale (0-1-0) et perdrait contre la règle isolée ci-dessus (0-2-0). */
.cl-moi-pts-val--negatif[b-zgxcwl5oge] {
    color: var(--esb-error);
}

.cl-moi-pts-lbl[b-zgxcwl5oge] {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--esb-text-secondary);
}
/* /Components/Pages/Shared/EvenementDetailPanel.razor.rz.scp.css */
.edp-root[b-zz4hihuzr8] {
    display: flex;
    flex-direction: column;
}

.edp-header[b-zz4hihuzr8] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--esb-lines-default);
    margin-bottom: 12px;
}

.edp-back[b-zz4hihuzr8] {
    margin-left: -8px;
}

[b-zz4hihuzr8] .edp-title {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.edp-body[b-zz4hihuzr8] {
    max-height: 60vh;
    overflow-y: auto;
    padding-right: 2px;
}

.edp-footer[b-zz4hihuzr8] {
    display: flex;
    gap: 8px;
    padding-top: 12px;
    margin-top: 4px;
    border-top: 1px solid var(--esb-lines-default);
}

/* `.esb-btn` est en `flex: none` : à 100 % de large, « Relancer les absents »
   poussait « Modifier » hors du panneau, qu'il fallait alors faire défiler. */
.edp-footer .esb-btn--block[b-zz4hihuzr8] {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

.edp-score-label[b-zz4hihuzr8] {
    font-size: 0.82rem;
    font-weight: 600;
    background: transparent;
    padding: 0;
}

.edp-score-label.esb-tag--success[b-zz4hihuzr8] { color: var(--esb-success); }
.edp-score-label.esb-tag--error[b-zz4hihuzr8]   { color: var(--esb-error); }
.edp-score-label.esb-tag--secondary[b-zz4hihuzr8] { color: var(--esb-secondary); }

/* Match à l'extérieur : comment l'équipe s'y rend (sur place ou covoiturage depuis le gymnase). */
.edp-deplacement[b-zz4hihuzr8] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 10px;
    background: rgba(var(--esb-primary-rgb), 0.10);
    border: 1px solid var(--esb-lines-default);
    color: var(--esb-text-primary);
    font-weight: 600;
}

.edp-deplacement[b-zz4hihuzr8]  .edp-deplacement-svg {
    flex-shrink: 0;
    color: var(--esb-primary);
}

/* Coach : répartition des présents entre covoiturage et sur place. */
.edp-depl-recap[b-zz4hihuzr8] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--esb-text-secondary);
}

.edp-depl-recap > span[b-zz4hihuzr8] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.edp-depl-recap[b-zz4hihuzr8]  .edp-depl-recap-svg {
    color: var(--esb-primary);
}

.edp-depl-recap-muted[b-zz4hihuzr8] {
    color: var(--esb-text-disabled);
}

/* Ligne d'un présent : son choix de déplacement, sur toute la largeur sous son nom
   (la ligne est en flex-wrap ; 26 px = l'icône de statut et son espacement). */
.edp-depl-choice[b-zz4hihuzr8] {
    flex-basis: 100%;
    padding-left: 26px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 8px;
    margin-bottom: 4px;
}

.edp-depl-choice .esb-seg-btn[b-zz4hihuzr8] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.edp-depl-ask[b-zz4hihuzr8] {
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--esb-secondary);
}

.edp-convoc[b-zz4hihuzr8] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Convocations d'un match à venir : sous l'identité du match, avant la liste des
   présences. En bas du panneau, le bouton « Gérer » passait inaperçu. */
.edp-convoc-card[b-zz4hihuzr8] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    padding: 12px 14px;
    margin-bottom: 14px;
    border-radius: 14px;
    border: 1px solid rgba(var(--esb-primary-rgb), 0.30);
    background: linear-gradient(135deg, rgba(var(--esb-primary-rgb), 0.16), rgba(var(--esb-primary-rgb), 0.05));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.edp-convoc-card--todo[b-zz4hihuzr8] {
    border-color: rgba(var(--esb-primary-rgb), 0.55);
}

.edp-convoc-card--warn[b-zz4hihuzr8] {
    border-color: rgba(var(--esb-warning-rgb), 0.45);
    background: linear-gradient(135deg, rgba(var(--esb-warning-rgb), 0.14), rgba(var(--esb-warning-rgb), 0.04));
}

.edp-convoc-card-icon[b-zz4hihuzr8] {
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--esb-primary-lighten);
    background: rgba(var(--esb-primary-rgb), 0.18);
}

.edp-convoc-card--warn .edp-convoc-card-icon[b-zz4hihuzr8] {
    color: var(--esb-warning);
    background: rgba(var(--esb-warning-rgb), 0.18);
}

.edp-convoc-card-icon[b-zz4hihuzr8]  .edp-convoc-card-svg {
    width: 20px;
    height: 20px;
}

.edp-convoc-card-text[b-zz4hihuzr8] {
    flex: 1;
    min-width: 140px;
}

.edp-convoc-card-title[b-zz4hihuzr8] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--esb-text-primary);
}

.edp-convoc-card-sub[b-zz4hihuzr8] {
    font-size: 0.75rem;
    color: var(--esb-text-secondary);
    margin-top: 1px;
}

.edp-convoc-card--warn .edp-convoc-card-sub[b-zz4hihuzr8] {
    color: var(--esb-warning);
}

.edp-convoc-card-btn[b-zz4hihuzr8] {
    flex-shrink: 0;
}

/* Étiquette portée par presque toutes les lignes : compacte, pour que le nom et
   les boutons Présent / Absent tiennent sur une seule ligne dans le panneau. */
.edp-tag-convoc[b-zz4hihuzr8] {
    font-size: 0.62rem;
    padding: 1px 6px;
}

/* Vue joueur : la barre partagée se pousse à droite (margin-left: auto) — ici elle prend la ligne. */
.edp-presbar[b-zz4hihuzr8]  .esb-presbar {
    margin-left: 0;
}

/* ── Aller / retour ──────────────────────────────────── */
.edp-lie[b-zz4hihuzr8] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 12px;
    border: 1px solid var(--esb-lines-default);
    background: var(--esb-surface);
}

.edp-lie[b-zz4hihuzr8]  .edp-lie-svg {
    color: var(--esb-primary);
    flex-shrink: 0;
}

.edp-lie-text[b-zz4hihuzr8] {
    flex: 1;
    min-width: 0;
}

.edp-lie-title[b-zz4hihuzr8] {
    font-weight: 600;
    font-size: 0.86rem;
}

.edp-lie-sub[b-zz4hihuzr8] {
    font-size: 0.74rem;
    color: var(--esb-text-secondary);
}

.edp-resume[b-zz4hihuzr8] {
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid var(--esb-lines-default);
}

.edp-resume-head[b-zz4hihuzr8] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--esb-text-secondary);
    margin-bottom: 4px;
}

.edp-resume-text[b-zz4hihuzr8] {
    font-size: 0.86rem;
    white-space: pre-line;
    overflow-wrap: anywhere;
}

.edp-lie-notes[b-zz4hihuzr8] {
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: 12px;
    border-left: 3px solid var(--esb-primary);
    background: rgba(var(--esb-primary-rgb), 0.06);
}

.edp-lie-notes-head[b-zz4hihuzr8] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--esb-text-secondary);
    margin-bottom: 4px;
}

.edp-lie-notes-text[b-zz4hihuzr8] {
    font-size: 0.86rem;
    white-space: pre-line;
    overflow-wrap: anywhere;
}

/* /Components/Pages/Shared/PresenceResumeSheet.razor.rz.scp.css */
/* ── Voile ─────────────────────────────────────────────────
   Toujours visible, contrairement à .esb-sheet-backdrop : le résumé s'ouvre
   par-dessus le tableau de bord à toutes les largeurs (tiroir à droite sur
   grand écran, feuille remontant du bas sur téléphone). */
.prs-backdrop[b-41vqn0je2a] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 1290;
    animation: prs-fade-b-41vqn0je2a 0.18s ease-out;
}

/* Fond opaque obligatoire : la feuille passe par-dessus la liste des événements. */
.prs-sheet[b-41vqn0je2a] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(420px, 100vw);
    z-index: 1300;
    display: flex;
    flex-direction: column;
    background: var(--esb-surface);
    border-left: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow-2);
    padding: 18px 20px 20px;
    overflow-y: auto;
    animation: prs-slide-left-b-41vqn0je2a 0.22s ease-out;
}

.prs-grip[b-41vqn0je2a] {
    display: none;
}

/* ── En-tête ───────────────────────────────────────────── */
.prs-head[b-41vqn0je2a] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.prs-head-text[b-41vqn0je2a] {
    flex: 1;
    min-width: 0;
}

.prs-kind[b-41vqn0je2a] {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 6px;
    color: var(--esb-primary-lighten);
    background: rgba(var(--esb-primary-rgb), 0.14);
}

.prs-kind--match[b-41vqn0je2a] {
    color: var(--esb-secondary);
    background: rgba(var(--esb-secondary-rgb), 0.14);
}

.prs-title[b-41vqn0je2a] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--esb-text-primary);
    margin-top: 6px;
    line-height: 1.3;
}

.prs-sub[b-41vqn0je2a] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

/* ── Présents en vedette ───────────────────────────────── */
.prs-hero[b-41vqn0je2a] {
    margin-top: 16px;
    padding: 14px 16px 16px;
    border-radius: 14px;
    border: 1px solid rgba(var(--esb-success-rgb), 0.35);
    background: linear-gradient(135deg, rgba(var(--esb-success-rgb), 0.20), rgba(var(--esb-success-rgb), 0.06));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.prs-hero-top[b-41vqn0je2a] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.prs-hero-num[b-41vqn0je2a] {
    font-size: 2.6rem;
    font-weight: 800;
    line-height: 1;
    color: var(--esb-success);
}

.prs-hero-text[b-41vqn0je2a] {
    display: flex;
    flex-direction: column;
}

.prs-hero-label[b-41vqn0je2a] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--esb-success);
}

.prs-hero-den[b-41vqn0je2a] {
    font-size: 0.76rem;
    color: var(--esb-text-secondary);
}

.prs-hero-rate[b-41vqn0je2a] {
    margin-left: auto;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 999px;
    color: var(--esb-success);
    background: rgba(var(--esb-success-rgb), 0.16);
}

/* La barre partagée se pousse à droite (margin-left: auto) : ici elle prend la largeur. */
.prs-hero[b-41vqn0je2a]  .esb-presbar {
    margin-left: 0;
}

.prs-hero[b-41vqn0je2a]  .esb-presbar-yes {
    background: var(--esb-success);
}

/* ── Compteurs secondaires ─────────────────────────────── */
.prs-counters[b-41vqn0je2a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px;
}

.prs-counter[b-41vqn0je2a] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding: 7px 12px;
    border-radius: 10px;
    border: 1px solid transparent;
}

.prs-counter-num[b-41vqn0je2a] {
    font-size: 1.05rem;
    font-weight: 700;
}

.prs-counter-label[b-41vqn0je2a] {
    font-size: 0.74rem;
}

.prs-counter--no[b-41vqn0je2a] {
    color: var(--esb-error);
    background: rgba(var(--esb-error-rgb), 0.08);
    border-color: rgba(var(--esb-error-rgb), 0.18);
}

.prs-counter--pending[b-41vqn0je2a] {
    color: var(--esb-warning);
    background: rgba(var(--esb-warning-rgb), 0.08);
    border-color: rgba(var(--esb-warning-rgb), 0.18);
}

/* ── Liste des présents ────────────────────────────────── */
.prs-quivient[b-41vqn0je2a] {
    margin-top: 16px;
}

/* ── Alertes ───────────────────────────────────────────── */
.prs-alerts[b-41vqn0je2a] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 12px;
}

.prs-alert[b-41vqn0je2a] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.74rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 8px;
    color: var(--esb-error);
    background: rgba(var(--esb-error-rgb), 0.12);
}

.prs-alert[b-41vqn0je2a]  .prs-alert-icon {
    width: 14px;
    height: 14px;
}

/* ── Groupes ───────────────────────────────────────────── */
.prs-group[b-41vqn0je2a] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    margin-bottom: 4px;
    min-height: 34px;
}

.prs-group-label[b-41vqn0je2a] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-text-secondary);
}

.prs-dot[b-41vqn0je2a] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.prs-dot--no[b-41vqn0je2a] { background: var(--esb-error); }
.prs-dot--pending[b-41vqn0je2a] { background: var(--esb-warning); }

.prs-relance[b-41vqn0je2a] {
    margin-left: auto;
}

.prs-row[b-41vqn0je2a] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    border-top: 1px solid var(--esb-lines-default);
    font-size: 0.86rem;
    color: var(--esb-text-primary);
}

.prs-name[b-41vqn0je2a] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.prs-row-meta[b-41vqn0je2a],
.prs-row-end[b-41vqn0je2a] {
    margin-left: auto;
}

.prs-row-meta[b-41vqn0je2a] {
    font-size: 0.72rem;
    color: var(--esb-text-disabled);
    white-space: nowrap;
}

.prs-avatar[b-41vqn0je2a] {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--esb-primary-lighten);
    background: rgba(var(--esb-primary-rgb), 0.16);
}

/* ── Pied ──────────────────────────────────────────────── */
.prs-foot[b-41vqn0je2a] {
    margin-top: auto;
    padding-top: 18px;
}

@keyframes prs-fade-b-41vqn0je2a {
    from { opacity: 0; }
}

@keyframes prs-slide-left-b-41vqn0je2a {
    from { transform: translateX(24px); opacity: 0; }
}

@keyframes prs-slide-up-b-41vqn0je2a {
    from { transform: translateY(32px); opacity: 0; }
}

/* ═══ RESPONSIVE — en fin de fichier (cf. CLAUDE.md) ═══════ */
@media (max-width: 640px) {
    .prs-sheet[b-41vqn0je2a] {
        top: auto;
        left: 0;
        width: auto;
        max-height: 85vh;
        border-left: none;
        border-top: 1px solid var(--esb-lines-default);
        border-radius: 18px 18px 0 0;
        box-shadow: var(--esb-shadow-sheet);
        padding: 10px 16px 20px;
        animation-name: prs-slide-up-b-41vqn0je2a;
    }

    .prs-grip[b-41vqn0je2a] {
        display: block;
        width: 38px;
        height: 4px;
        border-radius: 2px;
        background: var(--esb-lines-default);
        margin: 0 auto 12px;
        flex-shrink: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .prs-backdrop[b-41vqn0je2a],
    .prs-sheet[b-41vqn0je2a] {
        animation: none;
    }
}
/* /Components/Pages/Shared/QuiVient.razor.rz.scp.css */
.qv-card[b-3mawda87r7] {
    padding: 12px 12px 10px;
    border-radius: 14px;
    border: 1px solid rgba(var(--esb-success-rgb), 0.28);
    background: rgba(var(--esb-success-rgb), 0.07);
}

.qv-head[b-3mawda87r7] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--esb-success);
    margin: 0 2px 8px;
}

.qv-head[b-3mawda87r7]  .qv-head-icon {
    width: 16px;
    height: 16px;
}

.qv-empty[b-3mawda87r7] {
    margin: 0 2px;
    font-size: 0.84rem;
    color: var(--esb-text-secondary);
}

/* Match à l'extérieur : un sous-titre par mode de déplacement. */
.qv-group[b-3mawda87r7] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 6px;
    margin: 10px 2px 6px;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--esb-text-primary);
}

.qv-head + .qv-group[b-3mawda87r7] {
    margin-top: 2px;
}

.qv-group[b-3mawda87r7]  .qv-group-icon {
    width: 15px;
    height: 15px;
    color: var(--esb-primary);
}

.qv-group--muted[b-3mawda87r7],
.qv-group--muted[b-3mawda87r7]  .qv-group-icon {
    color: var(--esb-text-secondary);
}

.qv-group-meta[b-3mawda87r7] {
    font-weight: 600;
    color: var(--esb-text-secondary);
}

.qv-grid[b-3mawda87r7] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.qv-row[b-3mawda87r7] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 6px 8px;
    border-radius: 10px;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--esb-text-primary);
    background: var(--esb-surface);
    border: 1px solid rgba(var(--esb-success-rgb), 0.18);
}

.qv-avatar[b-3mawda87r7] {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--esb-success);
    background: rgba(var(--esb-success-rgb), 0.18);
}

.qv-name[b-3mawda87r7] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.qv-end[b-3mawda87r7] {
    margin-left: auto;
    flex-shrink: 0;
}
/* /Components/Pages/StatistiquesEntrainements.razor.rz.scp.css */
/* ── Topbar ──────────────────────────────────────────── */
/* ── KPI tiles ───────────────────────────────────────── */
.st-kpis[b-174gwrdnhi] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.st-kpi-card[b-174gwrdnhi] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 16px 18px;
    text-align: center;
}

.st-kpi-label[b-174gwrdnhi] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--esb-text-secondary);
    margin-top: 2px;
}

.st-kpi-hint[b-174gwrdnhi] {
    font-size: 0.7rem;
    color: var(--esb-text-disabled);
    margin-top: 4px;
}

@media (max-width: 900px) {
    .st-kpis[b-174gwrdnhi] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .st-kpis[b-174gwrdnhi] {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* ── Layout principal + aside ───────────────────────────── */
.st-layout[b-174gwrdnhi] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 318px;
    gap: 20px;
    align-items: start;
}

@media (max-width: 1160px) {
    .st-layout[b-174gwrdnhi] {
        grid-template-columns: minmax(0, 1fr);
    }
}

.st-main[b-174gwrdnhi] {
    min-width: 0;
}

.st-aside[b-174gwrdnhi] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Cartes latérales ────────────────────────────────── */
.st-aside-card[b-174gwrdnhi] {
    background: var(--esb-surface);
    border: 1px solid var(--esb-lines-default);
    box-shadow: var(--esb-shadow);
    border-radius: 16px;
    padding: 14px 16px;
}

.st-aside-title[b-174gwrdnhi] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--esb-text-disabled);
    margin-bottom: 10px;
}

/* À regarder */
.st-watch-row[b-174gwrdnhi] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
}

.st-watch-row + .st-watch-row[b-174gwrdnhi] {
    border-top: 1px solid var(--esb-lines-default);
}

.st-watch-dot[b-174gwrdnhi] {
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.st-watch-main[b-174gwrdnhi] {
    flex: 1;
    min-width: 0;
}

.st-watch-name[b-174gwrdnhi] {
    font-size: 0.82rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.st-watch-note[b-174gwrdnhi] {
    font-size: 0.7rem;
    color: var(--esb-text-secondary);
}

/* Répartition de l'effectif */
.st-bucket-row + .st-bucket-row[b-174gwrdnhi] {
    margin-top: 12px;
}

.st-bucket-line[b-174gwrdnhi] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 4px;
}

.st-bucket-label[b-174gwrdnhi] {
    font-size: 0.78rem;
    color: var(--esb-text-secondary);
}

.st-bucket-bar[b-174gwrdnhi] {
    height: 6px;
    border-radius: 999px;
    background: var(--esb-background-grey);
    overflow: hidden;
}

.st-bucket-bar-fill[b-174gwrdnhi] {
    height: 100%;
    border-radius: 999px;
}

/* Meilleure / pire séance */
.st-extreme-row[b-174gwrdnhi] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
}

.st-extreme-row + .st-extreme-row[b-174gwrdnhi] {
    border-top: 1px solid var(--esb-lines-default);
    margin-top: 4px;
    padding-top: 10px;
}

.st-extreme-main[b-174gwrdnhi] {
    min-width: 0;
}

.st-extreme-label[b-174gwrdnhi] {
    font-size: 0.78rem;
    font-weight: 600;
}

.st-extreme-note[b-174gwrdnhi] {
    font-size: 0.7rem;
    color: var(--esb-text-secondary);
    margin-top: 1px;
}

.st-col-pres[b-174gwrdnhi] { flex: none; width: 120px; }
.st-col-taux[b-174gwrdnhi] { flex: none; width: 70px; }
.st-col-hebdo[b-174gwrdnhi] { flex: none; width: 90px; }
.st-col-bar[b-174gwrdnhi]  { flex: none; width: 200px; display: flex; }

@media (max-width: 1400px) {
    .st-col-bar[b-174gwrdnhi] {
        width: 120px;
    }
}

@media (max-width: 1150px) {
    .st-col-bar[b-174gwrdnhi] {
        display: none;
    }
}

.st-chart[b-174gwrdnhi] {
    width: 100%;
    height: 300px;
    display: block;
    overflow: visible;
}

.st-chart-grid[b-174gwrdnhi] {
    stroke: var(--esb-lines-default);
    stroke-width: 1;
}

.st-chart-tick[b-174gwrdnhi] {
    fill: var(--esb-text-disabled);
    font-size: 11px;
    text-anchor: end;
}

.st-chart-line[b-174gwrdnhi] {
    fill: none;
    stroke: var(--esb-primary);
    stroke-width: 2.5;
    stroke-linejoin: round;
    stroke-linecap: round;
    vector-effect: non-scaling-stroke;
}

.st-chart-dot[b-174gwrdnhi] {
    fill: var(--esb-primary);
}

.st-chart-axis[b-174gwrdnhi] {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    color: var(--esb-text-disabled);
    margin-top: 6px;
    padding: 0 4px;
}

.st-chart-wrap[b-174gwrdnhi] {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

.st-chart-ticks[b-174gwrdnhi] {
    flex: none;
    width: 42px;
    height: 260px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 14px 0 14px;
    box-sizing: border-box;
    font-size: 11px;
    color: var(--esb-text-disabled);
    text-align: right;
}

.st-chart-wrap .st-chart[b-174gwrdnhi] {
    flex: 1;
    min-width: 0;
    height: 260px;
}

/* Sous 600 px, la colonne « Semaines » ne laisse plus de place au nom : on retire
   « Présences », que le taux voisin résume déjà. */
@media (max-width: 600px) {
    .st-col-pres[b-174gwrdnhi] {
        display: none;
    }
}
