/* ========================================
   AGENDA POLÍTICA - ESTILOS
   ======================================== */

/* Container Principal */
.agenda-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 2rem 0;
    border-bottom: 2px solid #e5e5e5;
}

.agenda-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: #1a1a1a;
}

.agenda-description {
    font-size: 1.125rem;
    color: #666;
    margin: 0;
}

/* Wrapper da Tabela */
.agenda-table-wrapper {
    overflow-x: auto;
    margin: 2rem 0;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Tabela */
.agenda-table {
    width: 100%;
    border-collapse: collapse;
    background: white;
}

.agenda-table thead {
    background: #2c3e50;
    color: white;
}

.agenda-table th {
    padding: 1rem;
    text-align: left;
    font-weight: 600;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.agenda-table tbody tr {
    border-bottom: 1px solid #e5e5e5;
    transition: background-color 0.2s ease;
}

.agenda-table tbody tr:hover {
    background-color: #f8f9fa;
}

.agenda-table tbody tr:last-child {
    border-bottom: none;
}

.agenda-table td {
    padding: 1rem;
    font-size: 0.9375rem;
    color: #333;
}

/* Colunas Específicas */
.agenda-date {
    font-weight: 600;
    color: #2c3e50;
    white-space: nowrap;
}

.agenda-time {
    color: #555;
    white-space: nowrap;
}

.agenda-event {
    font-weight: 500;
}

.agenda-link {
    color: #3498db;
    text-decoration: none;
    transition: color 0.2s ease;
}

.agenda-link:hover {
    color: #2980b9;
    text-decoration: underline;
}

.agenda-location {
    color: #666;
}

/* Badge de Categoria */
.category-badge {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    background: #e8f4f8;
    color: #2980b9;
    border-radius: 12px;
    font-size: 0.8125rem;
    font-weight: 500;
}

/* Estado Vazio */
.agenda-empty {
    text-align: center;
    padding: 4rem 2rem;
    color: #666;
}

.agenda-empty p {
    margin: 0.5rem 0;
}

/* ========================================
   RESPONSIVO - MOBILE
   ======================================== */

@media (max-width: 768px) {
    .agenda-title {
        font-size: 2rem;
    }

    .agenda-description {
        font-size: 1rem;
    }

    /* Tabela vira cards no mobile */
    .agenda-table thead {
        display: none;
    }

    .agenda-table,
    .agenda-table tbody,
    .agenda-table tr,
    .agenda-table td {
        display: block;
        width: 100%;
    }

    .agenda-table tr {
        margin-bottom: 1.5rem;
        border: 1px solid #e5e5e5;
        border-radius: 8px;
        padding: 1rem;
        background: white;
    }

    .agenda-table tr:hover {
        background: white;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }

    .agenda-table td {
        padding: 
        0.5rem 0;
        border: none;
        position: relative;
        padding-left: 40%;
        text-align: right;
    }

    .agenda-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        width: 35%;
        padding-right: 1rem;
        font-weight: 600;
        color: #2c3e50;
        text-align: left;
    }

    .category-badge {
        display: inline-block;
    }
}
