/**
 * bemvindo_feedback_9_cards_mobile.css
 * Feedback #9 — cards da home (bemvindo) sem overflow horizontal no mobile.
 * v1.0 (2026-09-01): minmax com teto 100%, min-width:0 nos cartões, rodapé empilhado.
 */

/* Grids base: nunca exigir faixa maior que a viewport */
.events-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
}

.seasons-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
}

.announcements-grid,
.dashboard-widgets {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}

.live-standings-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
}

#mainContainer,
#mainContainer .dashboard-grid,
#mainContainer .events-grid,
#mainContainer .seasons-grid,
#mainContainer .announcements-grid,
#mainContainer .today-stages-hero-container,
#mainContainer #lastStagesContainer.last-results-compact-section {
    min-width: 0;
    max-width: 100%;
}

#mainContainer .event-card,
#mainContainer .season-card-v2,
#mainContainer .season-card,
#mainContainer .announcement-card-welcome,
#mainContainer .widget {
    min-width: 0;
    max-width: 100%;
}

#mainContainer .season-card-v2-title,
#mainContainer .season-card-v2-subtitle,
#mainContainer .event-card-title,
#mainContainer .event-card-subtitle,
#mainContainer .event-card-organization,
#mainContainer .event-winner,
#mainContainer .announcement-card-welcome h3,
#mainContainer .leader-info,
#mainContainer .leader-info .details,
#mainContainer .leader-info .name {
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

#mainContainer .season-card-v2-action {
    min-width: 0;
}

@media (max-width: 768px) {
    #mainContainer #activeSeasonsContainer .seasons-grid,
    #mainContainer #openSeasonsNotEnrolledContainer .seasons-grid,
    #mainContainer .seasons-grid,
    #mainContainer .announcements-grid,
    #mainContainer .events-grid,
    #mainContainer .events-grid--today-compact,
    #mainContainer .dashboard-widgets,
    #mainContainer .private-dashboard .dashboard-widgets {
        grid-template-columns: minmax(0, 1fr);
    }

    #mainContainer .season-card-v2-footer {
        flex-direction: column;
        align-items: stretch;
        gap: 0.65rem;
    }

    #mainContainer .season-card-v2-footer .registration-status-v2 {
        align-self: flex-start;
    }

    #mainContainer .season-card-v2-action {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        justify-content: stretch;
    }

    #mainContainer .season-card-v2-action .rival-button {
        width: 100%;
        justify-content: center;
        min-height: 44px;
    }

    #mainContainer .events-grid--today-compact .event-actions .rival-button,
    #mainContainer .events-grid--today-compact .event-actions-last-results > .rival-button {
        min-height: 44px;
    }

    #mainContainer .season-card-v2-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.65rem;
    }

    #mainContainer .leader-info {
        align-items: flex-start;
    }
}

@media (max-width: 480px) {
    #mainContainer .season-card-v2-meta {
        grid-template-columns: minmax(0, 1fr);
    }

    #mainContainer .events-grid--today-compact .event-actions-last-results-secondary {
        grid-template-columns: minmax(0, 1fr);
    }
}
