:focus-visible {
    outline: 2px solid #3b82f6;
    outline-offset: 2px;
    border-radius: 4px;
}

[data-tab-panel][hidden] {
    display: none !important;
}

.tab-btn {
    color: #475569;
    background: transparent;
}

.tab-btn:hover {
    background: #F1F5F9;
}

.tab-btn-ativo {
    background: #0f172a;
    color: #ffffff;
    box-shadow: 0 4px 10px -2px rgba(15, 23, 42, 0.4);
}

.chart-card {
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.chart-card:hover {
    box-shadow: 0 12px 28px -8px rgba(15, 23, 42, 0.18);
    transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
    .chart-card {
        transition: none;
        transform: none;
    }
}

@media (max-width: 480px) {
    .chart-toolbar {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
}