[page="planejamento"] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

[page="planejamento"] .titulo-planejamento {
    font-size: 17px;
    font-weight: 700;
    color: var(--color-primary, #1a5276);
    margin: 0;
}

[page="planejamento"] .aviso-cache {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 7px 12px;
    background-color: #fff8e1;
    border: 1px solid #ffe082;
    border-radius: var(--border-radius, 4px);
    font-size: 12px;
    color: #7a5c00;
}

[page="planejamento"] .secao-tabela {
    display: flex;
    flex-direction: column;
    gap: 0;
}

[page="planejamento"] .table-responsive {
    overflow-x: auto;
    border: 1px solid #ddd;
    border-radius: var(--border-radius, 4px);
}

[page="planejamento"] .tabela-planejamento {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

[page="planejamento"] .tabela-planejamento thead tr {
    background-color: #f8f8f8;
    border-bottom: 2px solid #ddd;
}

[page="planejamento"] .tabela-planejamento thead th {
    padding: 6px 12px;
    text-align: left;
    font-weight: 600;
    color: #444;
    white-space: nowrap;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

[page="planejamento"] .tabela-planejamento tbody tr {
    border-bottom: 1px solid #eee;
    transition: background-color 0.15s;
}

[page="planejamento"] .tabela-planejamento tbody tr:last-child {
    border-bottom: none;
}

[page="planejamento"] .tabela-planejamento tbody tr:hover {
    background-color: #f5faf8;
}

[page="planejamento"] .tabela-planejamento tbody td {
    padding: 5px 12px;
    color: #333;
    vertical-align: middle;
    font-size: 12px;
}

[page="planejamento"] .col-exercicio {
    font-weight: 600;
    white-space: nowrap;
    width: 1%;
}

[page="planejamento"] .col-download {
    text-align: left;
    white-space: nowrap;
    width: 1%;
}

[page="planejamento"] .btn-download {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 9px;
    background-color: var(--primary-color, #009245);
    color: #fff;
    border-radius: var(--border-radius, 4px);
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.15s;
    white-space: nowrap;
}

[page="planejamento"] .btn-download:hover {
    opacity: 0.85;
    color: #fff;
    text-decoration: none;
}

[page="planejamento"] .btn-download i {
    font-size: 12px;
}

[page="planejamento"] .status-arquivo,
[page="planejamento"] .status-indisponivel,
[page="planejamento"] .status-erro {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    white-space: nowrap;
}

[page="planejamento"] .status-arquivo.carregando {
    color: #999;
}

[page="planejamento"] .status-indisponivel {
    color: #aaa;
}

[page="planejamento"] .status-erro {
    color: #c0392b;
}
