.vh-votacoes {
    color: #333;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.55;
    max-width: 1000px;
    margin: 0 auto;
}
.vh-votacoes * { box-sizing: border-box; }
.vh-votacoes__main-title { color: #0056b3; margin: 0 0 20px; }
.vh-votacoes__card {
    background: #fff; border: 1px solid #e8e8e8; border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,.06); padding: 20px; margin: 0 0 20px;
}
.vh-votacoes__card h3, h4 { color: #0056b3; margin: 0 0 15px; }
.vh-votacoes__latest { border-left: 5px solid #28a745; background: #f4fbf5; }
.vh-votacoes ul { list-style: none; padding: 0; margin: 0; }
.vh-votacoes li { border-bottom: 1px solid #eee; padding: 14px 0; overflow-wrap: anywhere; }
.vh-votacoes li:last-child { border-bottom: 0; }
.vh-votacoes__filter-grid { display: grid; grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(220px, 2fr); gap: 12px; }
.vh-votacoes__filter label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; }
.vh-votacoes__filter input { width: 100%; min-height: 40px; padding: 8px 10px; border: 1px solid #bbb; border-radius: 4px; font: inherit; }
.vh-votacoes__hint { margin: 10px 0 14px; color: #666; font-size: .7em; }
.vh-votacoes button {
    min-height: 38px; padding: 8px 15px; background: #0056b3; color: #fff;
    border: 0; border-radius: 4px; cursor: pointer; font: inherit;
}
.vh-votacoes button:disabled { background: #ccc; cursor: not-allowed; }
.vh-votacoes__pagination { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
.vh-votacoes__page-number { font-size: .7em; }
.vh-votacoes__result-name { color: #17365d; font-size: .85rem; line-height: 1.4; margin: 0 0 7px; }
.vh-votacoes__meta { color: #666; font-size: .65em; margin: 0; }
.vh-votacoes__badge { display: inline-block; margin-bottom: 7px; padding: 3px 8px; background: #e8f5e9; color: #216e39; border-radius: 4px; font-size: .6em; }
.vh-votacoes__loading { color: #666; font-style: italic; }
.vh-votacoes__error { color: #a61b1b; }
.vh-votacoes__eyebrow { margin-bottom: 6px; font-weight: 700; }
.vh-votacoes__status { color: #444; font-size: .7em; }
@media (max-width: 700px) {
    .vh-votacoes__card { padding: 15px; }
    .vh-votacoes__filter-grid { grid-template-columns: 1fr; }
    .vh-votacoes__filter button { width: 100%; }
    .vh-votacoes__pagination { flex-wrap: wrap; }
    .vh-votacoes__pagination button { flex: 1; }
}

.vh-votacoes__details-link { display: inline-block; margin-top: 9px; font-weight: 700; color: #0056b3; text-decoration: underline; }
.vh-votacoes__back-link { display: inline-block; margin-bottom: 12px; }
.vh-votacoes__detail-fields { display: grid; grid-template-columns: minmax(140px, 220px) 1fr; gap: 8px 16px; margin: 18px 0 28px; }
.vh-votacoes__detail-fields dt { font-weight: 700; }
.vh-votacoes__detail-fields dd { margin: 0; overflow-wrap: anywhere; }
.vh-votacoes__table-wrap { max-width: 100%; overflow-x: auto; }
.vh-votacoes__votes-table { width: 100%; border-collapse: collapse; font-size: .72em; }
.vh-votacoes__votes-table th, .vh-votacoes__votes-table td { padding: 9px 10px; border-bottom: 1px solid #ddd; text-align: left; }
.vh-votacoes__votes-table th { background: #f3f6f9; }
@media (max-width: 600px) { .vh-votacoes__detail-fields { grid-template-columns: 1fr; gap: 3px; } .vh-votacoes__detail-fields dd { margin-bottom: 10px; } }

/* Complementos da página de detalhes da votação */
.vh-votacoes__proposition { border: 1px solid #d9dee5; border-radius: 8px; padding: 14px; margin: 12px 0; }
.vh-votacoes__proposition h4 { margin-top: 0; }
