/* Campos e botões legíveis no fundo preto */
.form-control,
.form-select,
textarea,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="date"],
input[type="tel"],
input[type="search"],
.dataTables_filter input,
.dataTables_length select {
    background-color: #2b2b2b !important;
    color: #ffffff !important;
    border: 1px solid #c9a227 !important;
    caret-color: #fff;
}
.form-control:focus, .form-select:focus {
    background-color: #333 !important;
    color: #fff !important;
    border-color: #e8c547 !important;
    box-shadow: 0 0 0 .2rem rgba(232, 197, 71, .25) !important;
}
.form-control::placeholder, .form-label, label { color: #f3f3f3 !important; }
.btn-outline-dark, .btn-dark, a.btn-outline-dark {
    color: #f5f5f5 !important;
    border-color: #d0d0d0 !important;
    background: transparent !important;
}
.btn-outline-secondary {
    color: #e8e8e8 !important;
    border-color: #bdbdbd !important;
}
.btn-outline-success { color: #7dffa8 !important; border-color: #7dffa8 !important; }
.btn-outline-danger { color: #ff8b96 !important; border-color: #ff8b96 !important; }
.btn-outline-warning { color: #ffe08a !important; border-color: #ffe08a !important; }
.btn-outline-info { color: #9eeaf9 !important; border-color: #9eeaf9 !important; }
.btn-outline-primary { color: #9ec9f0 !important; border-color: #9ec9f0 !important; }
.text-dark, .btn-close { filter: invert(1) grayscale(1); }
.table, .table td, .table th { color: #f0f0f0 !important; }
