:root {
    --primary-color: #d31c1b;
    --primary-hover: #a91616;
    --primary-active: #8a1212;
    --secondary-color: #ff6600;
    --header-bg: #ffffff;
    --header-border: #e0e0e0;
    --text-color: #333333;
    --light-bg: #f8f9fa;

    /* Sobreescribir color primary de Bootstrap 5 */
    --bs-primary: #d31c1b;
    --bs-primary-rgb: 211, 28, 27;
    --bs-link-color: #d31c1b;
    --bs-link-color-rgb: 211, 28, 27;
    --bs-link-hover-color: #a91616;
    --bs-link-hover-color-rgb: 169, 22, 22;
}
.bg-lightgray{
    background-color: lightgray !important;
}

.bg-lightblue{
    background-color: lightblue !important;
}

.bg-lightcyan{
    background-color: lightcyan !important;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: var(--light-bg);
    color: var(--text-color);
}

.header {
    background-color: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    padding: 0.75rem 0;
}

.logo-text {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--primary-color);
    text-decoration: none;
}

.logo-text:hover {
    color: var(--primary-color);
    text-decoration: none;
}

.logo-text span {
    color: var(--secondary-color);
}

.user-menu .dropdown-toggle {
    color: var(--text-color);
    text-decoration: none;
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    transition: background-color 0.2s;
}

.user-menu .dropdown-toggle:hover {
    background-color: var(--light-bg);
}

.user-menu .dropdown-toggle i {
    margin-right: 0.5rem;
    color: var(--primary-color);
}

.main-content {
    min-height: calc(100vh - 70px);
    padding: 2rem 0;
}

.card {
    border: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border-radius: 0.5rem;
}

.card-header {
    background-color: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    font-weight: 600;
}

/* btn-primary: todos los estados via variables de Bootstrap 5 */
.btn-primary {
    --bs-btn-bg: #d31c1b;
    --bs-btn-border-color: #d31c1b;
    --bs-btn-hover-bg: #a91616;
    --bs-btn-hover-border-color: #a91616;
    --bs-btn-active-bg: #8a1212;
    --bs-btn-active-border-color: #8a1212;
    --bs-btn-disabled-bg: #d31c1b;
    --bs-btn-disabled-border-color: #d31c1b;
    --bs-btn-focus-shadow-rgb: 211, 28, 27;
}

/* btn-outline-primary */
.btn-outline-primary {
    --bs-btn-color: #d31c1b;
    --bs-btn-border-color: #d31c1b;
    --bs-btn-hover-bg: #d31c1b;
    --bs-btn-hover-border-color: #d31c1b;
    --bs-btn-active-bg: #a91616;
    --bs-btn-active-border-color: #a91616;
    --bs-btn-focus-shadow-rgb: 211, 28, 27;
}

.input-group .input-group-text {
    background-color: #1c1c1b;
    color: #ffffff;
}

.form-control:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(211, 28, 27, 0.25);
}

.alert {
    border-radius: 0.5rem;
}

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

.icon-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.12);
}

.icon-card .icon {
    font-size: 3rem;
    color: var(--primary-color);
    margin-bottom: 1rem;
}

.icon-card:hover .icon {
    color: var(--secondary-color);
}
