/* Colores Corporativos Allianz */
.bg-allianz-blue {
    background-color: #003781;
}

.text-allianz-blue {
    color: #003781;
}

.border-allianz-blue {
    border-color: #003781;
}

.bg-allianz-light-blue {
    background-color: #004a93;
}

/* Dorado/Ocre para acentos */
.bg-allianz-gold {
    background-color: #C5A900;
}

.text-allianz-gold {
    color: #C5A900;
}

.dark .text-allianz-gold {
    color: #eab308;
}

.border-allianz-gold {
    border-color: #C5A900;
}

.hover\:bg-allianz-gold-dark:hover {
    background-color: #a89000;
}

/* Gradientes */
.bg-gradient-allianz {
    background: linear-gradient(135deg, #003781 0%, #004a93 100%);
}

/* Sombras y Efectos */
.card-shadow {
    box-shadow: 0 10px 25px -5px rgba(0, 55, 129, 0.1), 0 8px 10px -6px rgba(0, 55, 129, 0.1);
}

.text-shadow {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

/* Detalles del acordeón */
details>summary {
    list-style: none;
}

details>summary::-webkit-details-marker {
    display: none;
}

/* Estilos Slider Simulador */
input[type=range] {
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 24px;
    width: 24px;
    border-radius: 50%;
    background: #C5A900;
    cursor: pointer;
    margin-top: -10px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 4px;
    cursor: pointer;
    background: #e2e8f0;
    border-radius: 2px;
}

.dark input[type=range]::-webkit-slider-runnable-track {
    background: rgba(255, 255, 255, 0.1);
}

/* Estilos Mensajes Formulario */
.form-success {
    color: #065f46;
    background-color: #d1fae5;
    padding: 1rem;
    border-radius: 0.5rem;
    border: 1px solid #059669;
    text-align: center;
    margin-top: 1rem;
}

.form-error {
    color: #b91c1c;
    background-color: #fee2e2;
    padding: 1rem;
    border-radius: 0.5rem;
    border: 1px solid #dc2626;
    text-align: center;
    margin-top: 1rem;
}

/* Overrides Globales para Modo Oscuro */
.dark .text-allianz-blue,
.dark strong,
.dark .font-black,
.dark .font-bold {
    color: #ffffff !important;
}

.dark .text-gray-600,
.dark .text-gray-500 {
    color: #a1a1aa;
    /* zinc-400 */
}

/* Custom Scrollbar para el Modal */
.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: transparent;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(0, 55, 129, 0.2);
    border-radius: 10px;
}

.dark .custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.1);
}

.profile-card.active {
    border-color: #003781;
    box-shadow: 0 20px 40px -10px rgba(0, 55, 129, 0.2);
    transform: translateY(-8px);
}

.dark .profile-card.active {
    border-color: #eab308;
    box-shadow: 0 20px 40px -10px rgba(234, 179, 8, 0.1);
}

.profile-card:not(.active) {
    opacity: 0.7;
    filter: grayscale(0.5);
}

.profile-card:not(.active):hover {
    opacity: 1;
    filter: grayscale(0);
}