:root {
    --ac-red: #E4002B;
    --ac-red-dark: #A5001F;
    --ac-dark: #1a1a1a;
}

body {
    background: #f4f5f7;
}

.app-navbar {
    background: linear-gradient(90deg, var(--ac-dark), #2b2b2b);
    border-bottom: 3px solid var(--ac-red);
}

.btn-primary {
    background-color: var(--ac-red);
    border-color: var(--ac-red);
}
.btn-primary:hover, .btn-primary:focus {
    background-color: var(--ac-red-dark);
    border-color: var(--ac-red-dark);
}
.text-primary { color: var(--ac-red) !important; }
.bg-primary { background-color: var(--ac-red) !important; }

.card-carro {
    border: none;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,.08);
    overflow: hidden;
    height: 100%;
}
.card-carro .status-bar { height: 6px; }
.status-disponivel { background: #1aa251; }
.status-em_uso { background: #d99a00; }
.status-manutencao { background: #6c757d; }
.status-revisao { background: #343a40; }
.status-lavagem { background: #0dcaf0; }
.status-abastecimento { background: #0d6efd; }
.status-inativo { background: #b02a37; }

.badge-seguro-ok {
    background: #1aa251;
}
.badge-seguro-nao {
    background: #b02a37;
}

.login-wrapper {
    min-height: 70vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.login-card {
    max-width: 420px;
    width: 100%;
    border-radius: 14px;
    box-shadow: 0 8px 30px rgba(0,0,0,.12);
}

.foto-avaria {
    width: 110px;
    height: 110px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid #dee2e6;
}

.table thead th {
    white-space: nowrap;
}

.logo-badge {
    background: #fff;
    border-radius: 8px;
    padding: 4px 8px;
    display: inline-flex;
    align-items: center;
}
.logo-badge img {
    height: 30px;
    display: block;
}
.logo-login {
    height: 76px;
}
