:root {
  /* Colores para tema claro */
  --primary: var(--color-gen);
  --primary-hover: var(--color-gen-dark);
  --primary-focus: rgba(5, 7, 57, 0.125);
  --primary-inverse: var(--color-white);
  
  --secondary: var(--color-highlight);
  --secondary-hover: #e5bc2f;
  --secondary-focus: rgba(255, 212, 55, 0.125);
  --secondary-inverse: var(--color-black);
  
  --accent: var(--color-tu-voz);
  --accent-hover: #c81f29;
  --accent-focus: rgba(228, 36, 47, 0.125);
  --accent-inverse: var(--color-white);
  
  /* === COLORES DE FONDO PICO TEMA CLARO === */
  --pico-background-color: var(--color-background) !important;
  --pico-card-background-color: var(--color-white) !important;
  --pico-card-sectioning-background-color: #f1f3f4 !important;
  
  /* Colores de texto para tema claro */
  --color: var(--color-text-primary);
  --h1-color: var(--color-black);
  --h2-color: var(--color-black);
  --h3-color: var(--color-black);
  --h4-color: var(--color-black);
  --h5-color: var(--color-black);
  --h6-color: var(--color-black);
  --muted-color: var(--color-text-secondary);
  --muted-border-color: var(--color-border);
  
  /* Tipografía */
  --font-family: var(--font-base);
  --line-height: var(--line-height-normal);
  --font-weight: var(--font-weight-regular);
  --font-size: var(--font-size-md);
  
  --h1-font-size: var(--font-size-xxxl);
  --h2-font-size: var(--font-size-xxl);
  --h3-font-size: var(--font-size-xl);
  --h4-font-size: var(--font-size-lg);
  --h5-font-size: var(--font-size-md);
  --h6-font-size: var(--font-size-sm);
  
  --heading-font-family: var(--font-base);
  --heading-font-weight: var(--font-weight-bold);
  
  /* Espaciado */
  --spacing: 1rem;
  --typography-spacing-vertical: var(--spacing-md);
  --form-element-spacing-vertical: var(--spacing-sm);
  --form-element-spacing-horizontal: var(--spacing-md);
  --block-spacing-vertical: var(--spacing-lg);
  --block-spacing-horizontal: var(--spacing-lg);
  
  /* Bordes */
  --border-radius: var(--border-radius-md);
  --border-width: 1px;
  
  /* Elementos UI para tema claro */
  --card-background-color: var(--color-white);
  --card-sectionning-background-color: var(--color-background);
  --card-border-color: var(--color-border);
  --card-box-shadow: var(--shadow-md);
  
  --form-element-background-color: var(--color-white);
  --form-element-border-color: var(--color-text-tertiary);
  --form-element-color: var(--color-text-primary);
  --form-element-placeholder-color: var(--color-text-tertiary);
  --form-element-active-background-color: var(--color-white);
  --form-element-active-border-color: var(--color-gen);
  --form-element-focus-color: var(--color-gen);
  --form-element-invalid-border-color: var(--color-error);
  --form-element-valid-border-color: var(--color-success);
  
  --switch-color: var(--color-white);
  --switch-checked-background-color: var(--color-gen);
  
  /* Navegación */
  --nav-element-spacing-vertical: var(--spacing-sm);
  --nav-element-spacing-horizontal: var(--spacing-md);
  --nav-link-spacing-vertical: var(--spacing-sm);
  --nav-link-spacing-horizontal: var(--spacing-md);
  
  /* Botones */
  --button-font-weight: var(--font-weight-medium);
  --button-border-width: var(--border-width);
  
  /* Animaciones */
  --transition: 0.2s ease;
}

/* Tema oscuro */
[data-theme="dark"] {
  /* === COLORES DE FONDO PICO TEMA OSCURO === */
  --pico-background-color: #00011F !important;
  --pico-card-background-color: #000114 !important;
  --pico-card-sectioning-background-color: #000108 !important;
  
  /* Colores primarios ajustados para tema oscuro */
  --primary: var(--color-highlight);
  --primary-hover: #ffe05a;
  --primary-focus: rgba(255, 212, 55, 0.125);
  --primary-inverse: var(--color-black);
  
  --secondary: var(--color-gen);
  --secondary-hover: var(--color-gen-dark);
  --secondary-focus: rgba(5, 7, 57, 0.125);
  --secondary-inverse: var(--color-white);
  
  /* Colores de texto para tema oscuro */
  --color: var(--color-white);
  --h1-color: var(--color-white);
  --h2-color: var(--color-white);
  --h3-color: var(--color-white);
  --h4-color: var(--color-white);
  --h5-color: var(--color-white);
  --h6-color: var(--color-white);
  --muted-color: rgba(255, 255, 255, 0.7);
  --muted-border-color: rgba(255, 255, 255, 0.15);
  
  /* Elementos UI para tema oscuro */
  --card-background-color: rgba(255, 255, 255, 0.05);
  --card-sectionning-background-color: rgba(255, 255, 255, 0.02);
  --card-border-color: rgba(255, 255, 255, 0.1);
  --card-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
  
  --form-element-background-color: rgba(255, 255, 255, 0.05);
  --form-element-border-color: rgba(255, 255, 255, 0.2);
  --form-element-color: var(--color-white);
  --form-element-placeholder-color: rgba(255, 255, 255, 0.5);
  --form-element-active-background-color: rgba(255, 255, 255, 0.1);
  --form-element-active-border-color: var(--color-highlight);
  --form-element-focus-color: var(--color-highlight);
  
  --switch-color: var(--color-white);
  --switch-checked-background-color: var(--color-highlight);
  
  /* Texto seleccionado */
  --mark-background-color: var(--color-highlight);
  --mark-color: var(--color-black);
}

/* Ajustes específicos para compatibilidad con tus componentes */
.container {
  --block-spacing-vertical: var(--spacing-md);
}

/* Gradientes */
.gradient-overlay {
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.9) 0%,
    rgba(0, 0, 0, 0.7) 30%,
    rgba(0, 0, 0, 0.4) 60%,
    rgba(0, 0, 0, 0.2) 80%,
    rgba(0, 0, 0, 0.1) 100%
  );
}

.gradient-card {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
}

/* Mejoras para gradientes en tema oscuro */
[data-theme="dark"] .gradient-overlay {
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.95) 0%,
    rgba(0, 0, 0, 0.8) 30%,
    rgba(0, 0, 0, 0.5) 60%,
    rgba(0, 0, 0, 0.3) 80%,
    rgba(0, 0, 0, 0.15) 100%
  );
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    /* === COLORES DE FONDO PICO TEMA OSCURO === */
    --pico-background-color: #06071c !important;
    --pico-card-background-color: #000114 !important;
    --pico-card-sectioning-background-color: #000108 !important;
    
    /* Colores primarios ajustados para tema oscuro */
    --primary: var(--color-highlight);
    --primary-hover: #ffe05a;
    --primary-focus: rgba(255, 212, 55, 0.125);
    --primary-inverse: var(--color-black);
    
    --secondary: var(--color-gen);
    --secondary-hover: var(--color-gen-dark);
    --secondary-focus: rgba(5, 7, 57, 0.125);
    --secondary-inverse: var(--color-white);
    
    /* Colores de texto para tema oscuro */
    --color: var(--color-white);
    --h1-color: var(--color-white);
    --h2-color: var(--color-white);
    --h3-color: var(--color-white);
    --h4-color: var(--color-white);
    --h5-color: var(--color-white);
    --h6-color: var(--color-white);
    --muted-color: rgba(255, 255, 255, 0.7);
    --muted-border-color: rgba(255, 255, 255, 0.15);
    
    /* Elementos UI para tema oscuro */
    --card-background-color: rgba(255, 255, 255, 0.05);
    --card-sectionning-background-color: rgba(255, 255, 255, 0.02);
    --card-border-color: rgba(255, 255, 255, 0.1);
    --card-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    
    --form-element-background-color: rgba(255, 255, 255, 0.05);
    --form-element-border-color: rgba(255, 255, 255, 0.2);
    --form-element-color: var(--color-white);
    --form-element-placeholder-color: rgba(255, 255, 255, 0.5);
    --form-element-active-background-color: rgba(255, 255, 255, 0.1);
    --form-element-active-border-color: var(--color-highlight);
    --form-element-focus-color: var(--color-highlight);
    
    --switch-color: var(--color-white);
    --switch-checked-background-color: var(--color-highlight);
    
    /* Texto seleccionado */
    --mark-background-color: var(--color-highlight);
    --mark-color: var(--color-black);
  }
}


/* Botones de carrusel para tema claro - BASE */
.carousel-control,
.carousel-control .arrow-circle {
  border-radius: 50% !important;
  transition: all 0.3s ease !important;
}

.carousel-control:hover .arrow-circle {
  background-color: rgba(0, 0, 0, 0.9) !important;
  border-radius: 50% !important;
}

.carousel-control:active .arrow-circle {
  transform: scale(0.95) !important;
  border-radius: 50% !important;
}

/* Botones de carrusel para tema oscuro - AMBOS carruseles */
[data-theme="dark"] .carousel-control,
[data-theme="dark"] .carousel-control .arrow-circle {
  background: rgba(255, 255, 255, 0.15) !important;
  border: 2px solid rgba(255, 255, 255, 0.3) !important;
  color: var(--color-white) !important;
  backdrop-filter: blur(10px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
  border-radius: 50% !important;
}

[data-theme="dark"] .carousel-control:hover,
[data-theme="dark"] .carousel-control:hover .arrow-circle {
  background: rgba(255, 255, 255, 0.25) !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
  color: var(--color-white) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.6) !important;
  border-radius: 50% !important;
}

[data-theme="dark"] .carousel-control:active,
[data-theme="dark"] .carousel-control:active .arrow-circle {
  transform: scale(0.95) !important;
  border-radius: 50% !important;
}

[data-theme="dark"] .carousel-control:focus,
[data-theme="dark"] .carousel-control:focus .arrow-circle {
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3) !important;
  border-radius: 50% !important;
}

/* También para modo automático oscuro */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .carousel-control,
  :root:not([data-theme="light"]) .carousel-control .arrow-circle {
    background: rgba(255, 255, 255, 0.15) !important;
    border: 2px solid rgba(255, 255, 255, 0.3) !important;
    color: var(--color-white) !important;
    backdrop-filter: blur(10px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
    border-radius: 50% !important;
  }

  :root:not([data-theme="light"]) .carousel-control:hover,
  :root:not([data-theme="light"]) .carousel-control:hover .arrow-circle {
    background: rgba(255, 255, 255, 0.25) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
    color: var(--color-white) !important;
    border-radius: 50% !important;
  }

  :root:not([data-theme="light"]) .carousel-control:active,
  :root:not([data-theme="light"]) .carousel-control:active .arrow-circle {
    transform: scale(0.95) !important;
    border-radius: 50% !important;
  }
}

/* ===== OVERRIDE PARA ARTÍCULOS SHOW ===== */
/* Reset específico para artículos con clase more-sections */

article.more-sections {
  background: transparent;
  box-shadow: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  margin-top: 5rem;
}

/* Reset también para tema oscuro */
[data-theme="dark"] article.more-sections {
  background: transparent;
  box-shadow: none;
  border: none;
}

/* Reset para modo automático oscuro */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) article.more-sections {
    background: transparent;
    box-shadow: none;
    border: none;
  }
}

/* Asegurar que los links usen los colores correctos */
article.more-sections a {
  color: var(--color-link);
  text-decoration: none;
  transition: color 0.2s ease;
}

article.more-sections a:hover {
  color: var(--color-link-hover);
  text-decoration: none;
}

/* Tipografía específica para contenido de artículos */
.article-content-section {
  line-height: var(--line-height-relaxed);
}

.article-content-section p {
  margin-bottom: var(--spacing-md);
}