/* ============================================================
   ELOHE GROUP — SISTEMA DE TEMAS (CLARO / OSCURO)
   v1.0 | Febrero 2026
   Dark = default  |  Light = data-theme="light"
   ============================================================ */

/* ============================================================
   TEMA OSCURO (DEFAULT — Ya definido en elohe-design.css)
   Aquí hacemos el override para el tema CLARO
   ============================================================ */

/* ============================================================
   TEMA CLARO — data-theme="light"
   ============================================================ */
[data-theme="light"] {
	/* Fondos */
	--e-purple-bg: #F4F0FA;
	--e-purple-card: #EDE7F6;
	--e-purple-deep: #2F044A;
	--e-purple-mid: #840F8A;
	--e-purple-border: rgba(132, 15, 138, 0.15);

	/* Naranjas — se mantienen igual */
	--e-orange: #FF6A00;
	--e-orange-light: #FF8C38;
	--e-orange-deep: #E55C00;
	--e-orange-glow: rgba(255, 106, 0, 0.2);
	--e-orange-glass: rgba(255, 106, 0, 0.06);

	/* Texto */
	--e-white: #1A0030;
	/* invirtiendo: texto oscuro sobre fondo claro */
	--e-gray-60: #555555;
	--e-gray-30: #444444;
	--e-gray-15: #333333;

	/* Glass */
	--e-glass: rgba(255, 255, 255, 0.7);
	--e-glass-border: rgba(132, 15, 138, 0.12);
	--e-glass-orange: rgba(255, 106, 0, 0.05);
	--e-glass-orange-b: rgba(255, 106, 0, 0.15);

	/* Gradientes */
	--e-grad-dark: linear-gradient(160deg, #EDE7F6 0%, #F4F0FA 100%);
	--e-grad-hero: radial-gradient(ellipse at 60% 0%, #D8BEF0 0%, #F0EAF8 60%, #F8F5FC 100%);

	/* Sombras (Basadas en elevación pero con tinte púrpura suave) */
	--e-elev-1: 0 2px 10px rgba(47, 4, 74, 0.05);
	--e-elev-2: 0 8px 30px rgba(47, 4, 74, 0.08);
	--e-elev-3: 0 20px 50px rgba(47, 4, 74, 0.12);
	--e-elev-4: 0 30px 80px rgba(47, 4, 74, 0.15);

	--e-shadow-sm: var(--e-elev-1);
	--e-shadow: var(--e-elev-2);
	--e-shadow-orange: 0 8px 32px rgba(255, 106, 0, 0.25);
	--e-shadow-card: var(--e-elev-3);

	/* Variables de compatibilidad (style.css) */
	--accent: #FF6A00;
	--bg-dark: #EDE7F6;
	--bg-deep: #F4F0FA;
	--text-light: #1A0030;
	--glass: rgba(255, 255, 255, 0.7);
	--glass-border: rgba(132, 15, 138, 0.12);

	/* Hero dynamics light */
	--e-hero-overlay: linear-gradient(135deg, rgba(237, 231, 246, 0.92) 0%, rgba(244, 240, 250, 0.85) 50%, rgba(255, 255, 255, 0.95) 100%);
	--e-hero-card-bg: rgba(255, 255, 255, 0.6);
}

/* ============================================================
   AJUSTES ESPECÍFICOS PARA TEMA CLARO
   ============================================================ */

/* Body */
[data-theme="light"] body {
	background-color: var(--e-purple-bg);
	color: var(--e-white);
}

/* Header */
[data-theme="light"] .e-header {
	background: rgba(244, 240, 250, 0.85);
	border-bottom-color: rgba(132, 15, 138, 0.1);
}

[data-theme="light"] .e-header.scrolled {
	background: rgba(244, 240, 250, 0.97);
	border-bottom-color: rgba(255, 106, 0, 0.2);
	box-shadow: 0 4px 30px rgba(47, 4, 74, 0.1);
}

[data-theme="light"] .e-logo img {
	/* En modo claro usamos el logo con letras moradas */
	filter: none;
}

[data-theme="light"] .e-nav a {
	color: #553370;
}

[data-theme="light"] .e-nav a:hover {
	color: #2F044A;
	background: rgba(47, 4, 74, 0.05);
}

[data-theme="light"] .e-nav-socials a {
	color: #840F8A !important;
}

[data-theme="light"] .e-hamburger span {
	background: #000000;
	/* Negro total para máximo visibilidad */
}

[data-theme="light"] .e-nav.open {
	background: #ffffff !important;
	/* Blanco sólido para máximo contraste */
	z-index: 2000000;
}

[data-theme="light"] .e-nav.open li {
	border-bottom-color: rgba(47, 4, 74, 0.05);
}

[data-theme="light"] .e-nav.open a {
	color: #1a102e;
}

[data-theme="light"] .e-nav-controls-row {
	background: #f8f9fa;
	border-top-color: #eee;
}

[data-theme="light"] .e-nav.open .e-lang-btn,
[data-theme="light"] .e-nav.open .e-nav-theme {
	background: #fff;
	border-color: #ddd !important;
	color: #1a102e !important;
}

/* Dropdown Light Mode */
[data-theme="light"] .e-dropdown {
	background: rgba(255, 255, 255, 0.92);
	border-color: rgba(132, 15, 138, 0.15);
	box-shadow: 0 10px 40px rgba(47, 4, 74, 0.12);
}

[data-theme="light"] .e-dropdown-link {
	color: #442266 !important;
}

[data-theme="light"] .e-dropdown-link:hover {
	background: rgba(132, 15, 138, 0.06) !important;
	color: var(--e-orange) !important;
}

[data-theme="light"] .e-dropdown-link i {
	color: #6a1b9a;
	/* Color más sólido */
}

/* Texto del logo en modo claro */
[data-theme="light"] .e-logo-light {
	display: block;
}

[data-theme="light"] .e-logo-dark {
	display: none;
}

.e-logo-light {
	display: none;
}

.e-logo-dark {
	display: block;
}

/* Cards glassmorphism */
[data-theme="light"] .e-card {
	background: rgba(255, 255, 255, 0.8);
	border-color: rgba(132, 15, 138, 0.1);
	box-shadow: var(--e-shadow-sm);
}

[data-theme="light"] .e-card:hover {
	background: rgba(255, 255, 255, 0.95);
	border-color: rgba(255, 106, 0, 0.3);
	box-shadow: var(--e-shadow-card);
}

[data-theme="light"] .e-service-card {
	background: rgba(255, 255, 255, 0.8);
	border-color: rgba(132, 15, 138, 0.08);
	box-shadow: var(--e-shadow-sm);
}

[data-theme="light"] .e-service-card:hover {
	background: rgba(255, 255, 255, 0.98);
	border-color: rgba(255, 106, 0, 0.25);
	box-shadow: var(--e-shadow-card);
}

[data-theme="light"] .e-service-card h3 {
	color: #2F044A;
}

[data-theme="light"] .e-service-card p {
	color: #666;
}

/* Hero en modo claro */
[data-theme="light"] .e-hero {
	background: var(--e-grad-hero);
}

[data-theme="light"] .e-hero-title {
	color: var(--e-purple-deep);
}

[data-theme="light"] .e-hero-desc {
	color: var(--e-gray-60);
}

[data-theme="light"] .e-stat-label {
	color: var(--e-gray-60);
	font-weight: 600;
}

[data-theme="light"] .e-hero-badge {
	background: rgba(255, 106, 0, 0.12);
	color: #D45000;
	border-color: rgba(255, 106, 0, 0.2);
}

[data-theme="light"] .e-orb-1 {
	background: radial-gradient(circle, rgba(132, 15, 138, 0.12), transparent 70%);
}

[data-theme="light"] .e-orb-2 {
	background: radial-gradient(circle, rgba(255, 106, 0, 0.08), transparent 70%);
}

[data-theme="light"] .e-orb-3 {
	background: radial-gradient(circle, rgba(47, 4, 74, 0.1), transparent 70%);
}

[data-theme="light"] .e-hero-watermark {
	opacity: 0.06;
}

[data-theme="light"] .e-particle {
	background: var(--e-purple-mid);
}

/* Sección labels y líneas */
[data-theme="light"] .e-section-title {
	color: #1A0030;
}

[data-theme="light"] .e-section-sub {
	color: #555;
}

/* Stats */
[data-theme="light"] .e-stat-label {
	color: #888;
}

/* Footer */
[data-theme="light"] .e-footer {
	background: #1A0030;
}

[data-theme="light"] .e-footer-brand p {
	color: #A88CC0;
}

[data-theme="light"] .e-footer-col ul a {
	color: #A88CC0;
}

[data-theme="light"] .e-footer-col ul a:hover {
	color: #fff;
}

[data-theme="light"] .e-footer-bottom p {
	color: rgba(255, 255, 255, 0.2);
}

[data-theme="light"] .e-footer-contact-item p {
	color: #A88CC0;
}

[data-theme="light"] .e-footer-contact-item strong {
	color: #fff;
}

[data-theme="light"] .e-footer-socials a {
	border-color: rgba(255, 255, 255, 0.1);
	color: #A88CC0;
}

/* Formulario inputs modo claro */
[data-theme="light"] .e-input {
	background: rgba(255, 255, 255, 0.9);
	border-color: rgba(132, 15, 138, 0.15);
	color: #1A0030;
}

[data-theme="light"] .e-input::placeholder {
	color: #999;
}

[data-theme="light"] .e-input:focus {
	border-color: var(--e-orange);
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.1);
}

[data-theme="light"] .e-label {
	color: #553370;
}

/* Info-box (subpáginas) */
[data-theme="light"] .info-box {
	background: rgba(255, 255, 255, 0.9);
	border-color: rgba(132, 15, 138, 0.12);
	color: #1A0030;
}

[data-theme="light"] .info-box ul li {
	color: #666;
}

/* Details text (subpáginas) */
[data-theme="light"] .details-text p {
	color: #555;
}

[data-theme="light"] .details-text h2 {
	color: #1A0030;
}

/* quote-form inputs (subpáginas) */
[data-theme="light"] .quote-form input,
[data-theme="light"] .quote-form select,
[data-theme="light"] .quote-form textarea {
	background: rgba(255, 255, 255, 0.9);
	border-color: rgba(132, 15, 138, 0.15);
	color: #1A0030;
}

[data-theme="light"] .quote-form label {
	color: #553370;
}

/* btn-cta y btn-outline en modo claro */
[data-theme="light"] .btn-cta {
	background: var(--e-orange);
	color: #fff;
}

/* Badges */
[data-theme="light"] .e-badge-orange {
	background: rgba(255, 106, 0, 0.08);
	color: #D45000;
}

/* Página de hero de servicios (subpáginas) */
[data-theme="light"] .service-hero .hero-bg {
	opacity: 0.12;
}

[data-theme="light"] .hero-content h1 {
	color: #FF6A00;
}

/* Modal / auth-card */
[data-theme="light"] .auth-card {
	background: rgba(255, 255, 255, 0.92);
	border-color: rgba(132, 15, 138, 0.1);
	color: #1A0030;
}

[data-theme="light"] .auth-header p {
	color: #666;
}

[data-theme="light"] .auth-form label {
	color: #553370;
}

[data-theme="light"] .auth-form input {
	background: rgba(255, 255, 255, 0.9);
	border-color: rgba(132, 15, 138, 0.15);
	color: #1A0030;
}

/* ============================================================
   BOTÓN DE CAMBIO DE TEMA (THEME SWITCH)
   ============================================================ */
.e-theme-toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	user-select: none;
}

.e-theme-toggle-track {
	width: 48px;
	height: 26px;
	border-radius: 13px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid var(--e-glass-border);
	position: relative;
	transition: var(--e-transition);
	flex-shrink: 0;
}

.e-theme-toggle-thumb {
	position: absolute;
	top: 3px;
	left: 3px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--e-orange);
	transition: var(--e-transition);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.65rem;
	color: white;
	box-shadow: 0 2px 6px rgba(255, 106, 0, 0.4);
}

.e-theme-toggle:hover .e-theme-toggle-track {
	border-color: var(--e-orange);
}

/* Estado: modo claro activo */
[data-theme="light"] .e-theme-toggle-track {
	background: rgba(255, 106, 0, 0.12);
	border-color: rgba(255, 106, 0, 0.3);
}

[data-theme="light"] .e-theme-toggle-thumb {
	left: calc(100% - 21px);
	background: var(--e-purple-mid);
	box-shadow: 0 2px 6px rgba(132, 15, 138, 0.4);
}

/* Íconos de sol/luna */
.e-icon-sun {
	color: #FFB300;
}

.e-icon-moon {
	color: #C0A0D8;
}

[data-theme="light"] .e-icon-sun {
	color: var(--e-orange);
}

[data-theme="light"] .e-icon-moon {
	color: #840F8A;
}

/* Contenedor del toggle en el nav */
.e-nav-theme {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: var(--e-radius-sm);
	border: 1px solid var(--e-glass-border);
	background: var(--e-glass);
	cursor: pointer;
	transition: var(--e-transition);
	font-size: 0.8rem;
}

.e-nav-theme:hover {
	border-color: var(--e-orange);
	background: var(--e-glass-orange);
}

[data-theme="light"] .e-nav-theme {
	border-color: rgba(132, 15, 138, 0.25);
	background: #ffffff;
}

/* ============================================================
   TRANSICIÓN SUAVE ENTRE TEMAS
   ============================================================ */
*,
*::before,
*::after {
	transition-property: background-color, border-color, color;
	/* Reducido para evitar lag */
	transition-duration: 0.15s;
	/* Más rápido e inmediato */
	transition-timing-function: linear;
	/* Sin efectos de rebote o eases lentos */
}

/* Excluir las animaciones de efectos de las transiciones de tema */
.e-orb,
.e-particle,
.e-hero-watermark,
.e-loader-bar-fill,
.e-page-loader,
.e-whatsapp-fab,
.e-scroll-indicator {
	transition: none !important;
}