/* Definição das variáveis de cor para os temas */
:root {
    --background-color: #ffffff;
    --text-color: #363636;
    --box-background-color: #ffffff;
    --box-shadow: 0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1), 0 0px 0 1px rgba(10, 10, 10, 0.02);
    --border-color: #dbdbdb;
    --table-stripe-color: #fafafa;
    --input-background-color: #ffffff;
    --input-border-color: #dbdbdb;
    --input-text-color: #363636;
    --primary-color-invert: #fff;
}

html[data-theme="dark"] {
    --background-color: #1a202c;
    --text-color: #cbd5e0;
    --box-background-color: #2d3748;
    --box-shadow: 0 0.5em 1em -0.125em rgba(0,0,0, 0.2), 0 0px 0 1px rgba(0,0,0, 0.1);
    --border-color: #4a5568;
    --table-stripe-color: #283141;
    --input-background-color: #4a5568;
    --input-border-color: #718096;
    --input-text-color: #e2e8f0;
    --primary-color-invert: #000;
}

/* Aplicando as variáveis aos componentes do Bulma */
body {
    background-color: var(--background-color);
    color: var(--text-color);
}

.box, .card, .panel {
    background-color: var(--box-background-color);
    box-shadow: var(--box-shadow);
}

.title, .subtitle, .label, strong {
    color: var(--text-color);
}

.table {
    background-color: var(--box-background-color);
    color: var(--text-color);
}

.table td, .table th {
    border-color: var(--border-color);
}

.table.is-striped tbody tr:not(.is-selected):nth-child(even) {
    background-color: var(--table-stripe-color);
}

.input, .textarea, .select select {
    background-color: var(--input-background-color);
    border-color: var(--input-border-color);
    color: var(--input-text-color);
}

.button.is-primary {
    color: var(--primary-color-invert);
}