/* Bloc cotisation — une colonne de la grille « Avant la compétition » (50 % desktop) */
.dashboard-cotisation-block {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.35rem;
    min-height: 100%;
    margin: 0;
    padding: 1.1rem 1.15rem;
    border: 1px solid rgb(248 113 113 / 45%);
    border-radius: 0.85rem;
    background: linear-gradient(135deg, rgb(254 242 242) 0%, rgb(255 255 255) 100%);
    overflow: visible;
}

.precomp-dashboard__grid > .dashboard-cotisation-block .precomp-card__status-mark--cotisation {
    background: linear-gradient(145deg, #b91c1c, #dc2626);
    color: #fff;
    box-shadow:
        0 0 0 2px #fff,
        0 4px 14px rgb(220 38 38 / 35%);
}

html.dark body.front-body .precomp-dashboard__grid > .dashboard-cotisation-block .precomp-card__status-mark--cotisation {
    box-shadow:
        0 0 0 2px var(--lpf-bg, #0f172a),
        0 4px 14px rgb(220 38 38 / 40%);
}

html.lpf-gta-theme .precomp-dashboard__grid > .dashboard-cotisation-block .precomp-card__status-mark--cotisation {
    box-shadow:
        0 0 0 2px var(--bg-secondary, #111),
        0 4px 14px rgb(220 38 38 / 45%);
}

@media (max-width: 767px) {
    .precomp-dashboard__grid > .dashboard-cotisation-block {
        grid-column: 1 / -1;
        max-width: 100%;
    }
}

.dashboard-cotisation-block__title {
    margin: 0 0 0.5rem;
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #b91c1c;
}

.dashboard-cotisation-block__text {
    margin: 0;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 600;
    color: #0f172a;
}

.dashboard-cotisation-block__wero {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    line-height: 1.4;
    font-style: italic;
    color: #64748b;
}

.dashboard-cotisation-block__wero a {
    color: inherit;
    font-weight: 600;
    text-decoration: none;
}

.dashboard-cotisation-block__wero a:hover {
    color: #1d4ed8;
    text-decoration: underline;
}

html.dark body.front-body .dashboard-cotisation-block {
    border-color: rgb(248 113 113 / 35%);
    background: linear-gradient(135deg, rgb(69 10 10 / 35%) 0%, var(--lpf-bg, #0f172a) 100%);
}

html.dark body.front-body .dashboard-cotisation-block__title {
    color: #fca5a5;
}

html.dark body.front-body .dashboard-cotisation-block__text {
    color: var(--lpf-text, #f1f5f9);
}

html.dark body.front-body .dashboard-cotisation-block__wero {
    color: var(--lpf-muted, #94a3b8);
}

html.dark body.front-body .dashboard-cotisation-block__wero a:hover {
    color: var(--lpf-link, #4ade80);
}

html.lpf-gta-theme .dashboard-cotisation-block {
    border-color: rgb(220 38 38 / 50%);
    background: linear-gradient(135deg, rgb(40 10 10 / 80%) 0%, var(--bg-secondary, #111) 100%);
}

html.lpf-gta-theme .dashboard-cotisation-block__title {
    color: #f87171;
}

html.lpf-gta-theme .dashboard-cotisation-block__text {
    color: var(--color-text, #f5f5f5);
}

html.lpf-gta-theme .dashboard-cotisation-block__wero a:hover {
    color: var(--color-gold, #d4af37);
}
