/* CSS PÁGINAS SECUNDARIAS — Timemap y Términos */

.timeline-intro { color: var(--text-muted); text-align: center; max-width: 540px; margin: 0 auto 1.2rem; }
.timeline-btn { display: block; width: fit-content; margin: 0 auto 3rem; }

.timeline {
  position: relative;
  margin-left: 80px;
  padding-left: 50px;
  display: block;
}

/* Tubo blanco — encima del verde (z-index 2) */
.timeline::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 100%;
  background: transparent;
  border: 4px solid rgba(255,255,255,0.75);
  border-radius: 999px;
  z-index: 2;
  pointer-events: none;
}

/* Barra verde — MISMO ancho/posición que la caja del tubo (22px, left:0)
   para que llegue justo hasta el borde blanco sin dejar fondo negro visible
   ni taparlo (queda debajo, z-index 1). */
.timeline-track {
  position: absolute;
  left: 0;
  top: var(--progress-top, 9999px);
  width: 22px;
  height: var(--progress-height, 0px);
  background: #00a040;
  border-radius: 999px;
  z-index: 1;
}

.timeline-item {
  position: relative;
  margin-bottom: 3rem;
  opacity: 0;
  transform: translateX(-20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.timeline-item.visible { opacity: 1; transform: translateX(0); }

.timeline-content h3,
.timeline-content summary,
.timeline-content p,
.timeline-content ul li { margin: 0 0 0.4rem; }

.timeline-content summary { cursor: pointer; font-weight: 600; list-style: none; font-size: 1.05rem; }
.timeline-content ul { padding-left: 1.2rem; margin-top: 0.4rem; }
.timeline-content details { cursor: pointer; }
.timeline-content details[open] summary { margin-bottom: 0.5rem; }

.timeline-origin h3 { font-size: 1.2rem; margin-bottom: 0.3rem; }
.timeline-origin p  { color: var(--text-muted); font-size: 0.9rem; }

.legal-text { max-width: 720px; margin: 0 auto; color: var(--text-muted); line-height: 1.8; }
.legal-text h3 { color: var(--text-main); margin: 2rem 0 0.8rem; font-size: 1.1rem; }
.legal-text p  { margin-bottom: 1rem; }
.legal-text a  { color: var(--accent); }
