.tend_kpi_denom { font-size: .8rem; font-weight: 400; color: hsl(var(--muted-foreground)); }

.tendances_chart_wrap { position: relative; height: 380px; }

.tend_chart_hint {
    font-size: .72rem;
    text-align: right;
    line-height: 1.35;
    max-width: 130px;
    flex-shrink: 0;
}

#regions_legend {
    display: flex;
    flex-wrap: wrap;
    gap: .1rem .3rem;
    margin-top: .7rem;
    padding-top: .6rem;
    border-top: 1px solid hsl(var(--border));
}
.legend_item_custom {
    display: flex;
    align-items: center;
    gap: .3rem;
    cursor: pointer;
    font-size: .73rem;
    line-height: 1;
    padding: .18rem .35rem;
    border-radius: 3px;
    transition: opacity .15s;
    user-select: none;
    white-space: nowrap;
    color: hsl(var(--muted-foreground));
}
.legend_item_custom:hover { background: hsl(var(--foreground) / .06); color: hsl(var(--foreground)); }
.legend_item_custom.legend_hidden { opacity: .3; }
.legend_france { color: hsl(var(--foreground)); font-weight: 600; }
.legend_swatch {
    display: inline-block;
    width: 14px;
    height: 3px;
    border-radius: 2px;
    flex-shrink: 0;
}

.tend_topflop_sep {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid hsl(var(--border));
}
.tend_topflop_head {
    display: flex;
    align-items: center;
    gap: .3rem;
    font-size: .68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: hsl(var(--muted-foreground));
    margin-bottom: .5rem;
}
.tend_topflop_list .tend_top_item:last-child { border-bottom: none; }
.tend_top_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .5rem;
    padding: .3rem 0;
    border-bottom: 1px solid hsl(var(--border));
}
.tend_top_nom { font-size: .82rem; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.tend_top_nom a { text-decoration: none; color: hsl(var(--foreground)); }
.tend_top_nom a:hover { color: hsl(var(--primary)); }
.tend_top_evol { font-family: var(--f-mono); font-size: .82rem; font-weight: 600; white-space: nowrap; }

.tend_th_rank   { width: 2rem; text-align: right; color: hsl(var(--muted-foreground)); }
.tend_th_evol   { padding-left: 1.5rem !important; }
.tend_th_cur    { font-weight: 700; }
.tend_th_bar    { width: 88px; }
.tend_td_rank   { font-family: var(--f-mono); font-size: .7rem; color: hsl(var(--muted-foreground)); text-align: right; }
.tend_td_cur    { font-weight: 600; }
.tend_td_bar    { padding-right: 1rem !important; }
.tend_bar_wrap  { width: 80px; height: 7px; background: hsl(var(--border)); border-radius: 4px; overflow: hidden; }
.tend_bar_pos   { height: 100%; background: #16a34a; border-radius: 4px; }
.tend_bar_neg   { height: 100%; background: #dc2626; border-radius: 4px; }

@media (max-width: 959px) {
    .tend_chart_scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .tendances_chart_wrap { height: 280px; min-width: 560px; }
    .tend_chart_hint { display: none; }
    .legend_item_custom { font-size: .78rem; padding: .32rem .4rem; }
}
