/* Augments the global EventGavel stylesheet. Minimal padding/margins per user request. */

.page-body {
    display: flex;
    flex-direction: column;
    max-width: 1040px;
    margin: 0 auto;
    padding: 8px 12px; /* reduced */
    background: #fff;
    color: #222;
    gap: 8px; /* compact vertical rhythm */
}

/* Headings */
.main-heading {
    font-size: 1.9rem;
    margin: 6px 0 8px 0; /* compact */
    text-align: center;
}

.subheading {
    font-size: 1.25rem;
    margin: 10px 0 6px 0; /* compact */
    line-height: 1.25;
}

/* Paragraphs */
.article-paragraph {
    margin: 6px 0; /* compact */
    line-height: 1.55;
    font-size: 1rem;
}

/* Lists */
.region-list,
.key-points-list {
    margin: 6px 0; /* compact */
    padding-left: 18px;
    line-height: 1.5;
}

.key-points-list li,
.region-list li {
    margin: 3px 0;
}

/* Tables (kept narrow-friendly) */
.table-wrap {
    overflow-x: auto;
}

.summary-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
}

.summary-table th,
.summary-table td {
    border: 1px solid #d7d7d7;
    padding: 6px 8px; /* compact */
    text-align: left;
    vertical-align: top;
}

.summary-table th {
    background: #f3f3f3;
    font-weight: 600;
}

/* Flex grids for cards/lists */
.list-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* compact spacing */
}

.list-card {
    flex: 1 1 300px;
    border: 1px solid #e6e6e6;
    padding: 8px; /* compact */
    border-radius: 4px;
    background: #fafafa;
}

.miniheading {
    font-size: 1.05rem;
    margin: 2px 0 6px 0;
}

/* Sport cards grid */
.sport-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* compact */
    margin: 6px 0;
}

.sport-card {
    flex: 1 1 260px;
    border: 1px solid #e6e6e6;
    padding: 8px; /* compact */
    border-radius: 4px;
    background: #fbfbfb;
}

/* Top summary section emphasis without large spacing */
.top-summary {
    border: 1px solid #e0e0e0;
    background: #fcfcff;
    padding: 8px; /* compact */
    border-radius: 4px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-body {
        padding: 8px;
        max-width: 100%;
    }
    .main-heading {
        font-size: 1.6rem;
    }
    .subheading {
        font-size: 1.15rem;
    }
    .summary-table {
        font-size: 0.92rem;
    }
}
