@media (min-width: 1700px) {
    .site-shell {
        --max: 1760px;
    }

    .rankings-grid {
        grid-template-columns: repeat(10, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .two-column,
    .chart-layout,
    .strategy-grid {
        grid-template-columns: 1fr;
    }

    .tool-grid,
    .metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rankings-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .table-map-card {
        position: static;
    }

    .table-map {
        max-width: 440px;
    }
}

@media (max-width: 860px) {
    .site-shell {
        padding-inline: 10px;
    }

    .topbar {
        align-items: flex-start;
    }

    .nav-toggle {
        display: block;
        flex: 0 0 auto;
    }

    .section-nav {
        position: absolute;
        top: 66px;
        right: 16px;
        left: 16px;
        display: none;
        z-index: 5;
        flex-direction: column;
        align-items: stretch;
    }

    .section-nav.is-open {
        display: flex;
    }

    .section-nav a {
        padding: 12px;
    }

    .section-heading.split,
    .training-card {
        display: grid;
        align-items: start;
    }

    .rankings-grid,
    .outs-list,
    .matchup-grid,
    .stack-grid,
    .stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .two-column {
        padding: 10px;
    }

    .dashboard-card {
        padding: 16px;
    }
}

@media (max-width: 620px) {
    .tool-grid,
    .rankings-grid,
    .metric-grid,
    .outs-list,
    .matchup-grid,
    .stack-grid,
    .stat-grid {
        grid-template-columns: 1fr;
    }

    .hero-actions {
        display: grid;
    }

    .button {
        width: 100%;
    }

    .out-stats {
        grid-template-columns: 1fr;
    }

    .bar-row {
        grid-template-columns: 86px 1fr 42px;
        gap: 8px;
    }

    .seat {
        width: 44px;
        height: 44px;
        margin: -22px;
        font-size: 0.68rem;
    }

    .data-table {
        min-width: 640px;
    }
}