:root {
    --corp-verde: #A5BF00;
    --corp-verde-rgb: 165, 191, 0;
    --corp-azul: #008EA9;
    --corp-azul-rgb: 0, 142, 169;
    --corp-azul-dark: #006d82;
    --bs-primary: var(--corp-azul);
    --bs-primary-rgb: var(--corp-azul-rgb);
}

body {
    background: linear-gradient(135deg, #e8f4f8 0%, #c3e8f0 100%);
    min-height: 100vh;
}

.card {
    border-radius: 0.75rem;
}

.card-header {
    border-radius: 0.75rem 0.75rem 0 0 !important;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--corp-azul);
    box-shadow: 0 0 0 0.2rem rgba(var(--corp-azul-rgb), 0.15);
}

.form-select,
.form-control {
    font-size: 0.875rem;
}

.form-label,
.form-check-label {
    font-size: 0.875rem;
}

.card-title.h6, h6.card-title {
    font-size: 0.9rem;
}

.was-validated .form-control:valid,
.was-validated .form-select:valid {
    border-color: var(--corp-verde);
}

.navbar {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}

footer {
    margin-top: 3rem;
}

.btn-primary {
    --bs-btn-bg: var(--corp-azul);
    --bs-btn-border-color: var(--corp-azul);
    --bs-btn-hover-bg: var(--corp-azul-dark);
    --bs-btn-hover-border-color: var(--corp-azul-dark);
    --bs-btn-active-bg: var(--corp-azul-dark);
    --bs-btn-active-border-color: var(--corp-azul-dark);
}

.btn-outline-primary {
    --bs-btn-color: var(--corp-azul);
    --bs-btn-border-color: var(--corp-azul);
    --bs-btn-hover-bg: var(--corp-azul);
    --bs-btn-hover-border-color: var(--corp-azul);
    --bs-btn-active-bg: var(--corp-azul);
    --bs-btn-active-border-color: var(--corp-azul);
}

.bg-primary {
    background-color: var(--corp-azul) !important;
}

.text-primary {
    color: var(--corp-azul) !important;
}

.table-dark {
    --bs-table-bg: var(--corp-azul-dark);
}

.navbar .navbar-brand {
    font-weight: 600;
}

.bg-verde {
    background-color: var(--corp-verde) !important;
}

.text-verde {
    color: var(--corp-verde) !important;
}

.badge.bg-verde {
    background-color: var(--corp-verde) !important;
    color: #1a1d23;
}

.btn-verde {
    background-color: var(--corp-verde);
    border-color: var(--corp-verde);
    color: #1a1d23;
}

.btn-verde:hover {
    background-color: #93ab00;
    border-color: #93ab00;
    color: #1a1d23;
}

.admin-bg {
    background: linear-gradient(135deg, #0a1f26 0%, var(--corp-azul-dark) 100%);
}

.table-hover tbody tr {
    cursor: pointer;
}

.table-hover tbody tr:hover {
    background-color: rgba(var(--corp-azul-rgb), 0.06);
}

.badge-status {
    font-size: 0.8rem;
}

.form-check-input:checked {
    background-color: var(--corp-verde);
    border-color: var(--corp-verde);
}

.alert-success {
    --bs-alert-bg: #f0f7e6;
    --bs-alert-color: #6b7d00;
    --bs-alert-border-color: var(--corp-verde);
}
