/* Ruta de las 5 estaciones del módulo · Aula TP Chile
   Un camino con cinco paradas. El borde organiza; no encierra. */

.panel.route-panel.lr,
.lr.learn-path{
  --lr-line:#D5DEE8;
  --lr-line-done:#8FB4C9;
  background:#fff;
  border:1px solid #D5DEE8;
  border-radius:16px;
  box-shadow:0 1px 4px rgba(7,42,78,.06);
  padding:18px 20px 14px;
  margin:0 0 12px;
  scroll-margin-top:24px;
}
.lr-head{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0 0 16px;
}
.lr-head .work-ico{
  width:36px;height:36px;border-radius:10px;flex-shrink:0;
  background:#E8F1FB;color:#1558A0;
  box-shadow:inset 0 0 0 1px #C5D7EA;
}
.lr-head .work-ico svg{width:18px;height:18px}
.lr-head h3{
  margin:0;
  font-size:14px;
  color:#0B3A6B;
  display:flex;
  align-items:center;
  gap:8px;
}
.lr-head p{
  margin:4px 0 0;
  font-size:13px;
  color:#6B7C8E;
}

.lr-track{
  --lr-fill:0%;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  position:relative;
  margin:0;
  padding:8px 4px 4px;
}
.lr-track::before,
.lr-track::after{
  content:"";
  position:absolute;
  top:30px;
  left:10%;
  right:10%;
  height:3px;
  border-radius:99px;
  pointer-events:none;
  z-index:0;
}
.lr-track::before{background:#E4EBF3}
.lr-track::after{
  right:auto;
  width:calc(80% * var(--lr-fill) / 100);
  background:#8FB4C9;
}

.lr-stop{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  min-width:0;
  height:100%;
  padding-top:56px;
}
.lr-stop.s1{--lr:#3EC6E0;--lr-soft:#D6F4FA;--lr-edge:#B8E8F2;--lr-ink:#0B3A6B}
.lr-stop.s2{--lr:#1558A0;--lr-soft:#E8F1FB;--lr-edge:#C5D7EA;--lr-ink:#072A4E}
.lr-stop.s3{--lr:#6A5A9A;--lr-soft:#F3EFFA;--lr-edge:#DDD4F0;--lr-ink:#3b1d7a}
.lr-stop.s4{--lr:#C47A12;--lr-soft:#FFF4E0;--lr-edge:#F0DDB0;--lr-ink:#573613}
.lr-stop.s5{--lr:#1F8A5B;--lr-soft:#E6F6EE;--lr-edge:#C5E6D4;--lr-ink:#0B3A6B}

.lr-node{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  background:#fff;
  border:1.5px solid var(--lr-edge);
  color:var(--lr-ink);
  font-size:16px;font-weight:800;
  position:absolute;
  top:8px;
  left:50%;
  transform:translateX(-50%);
  z-index:2;
  margin:0;
  box-shadow:0 1px 3px rgba(7,42,78,.06);
}
.lr-num{line-height:1}
.lr-check{
  position:absolute;top:-4px;right:-4px;
  width:16px;height:16px;border-radius:50%;
  background:var(--lr);color:#fff;
  display:grid;place-items:center;
  box-shadow:0 0 0 2px #fff;
}
.lr-check .icon{width:10px;height:10px;display:block}
.lr-stop.is-current .lr-node{
  width:52px;height:52px;
  top:4px;
  border:2px solid var(--lr);
  box-shadow:0 0 0 6px var(--lr-soft),0 4px 12px rgba(7,42,78,.1);
  font-size:18px;
}
.lr-stop.is-goal .lr-node{
  box-shadow:0 0 0 5px color-mix(in srgb, var(--lr-soft) 80%, #fff);
}
.lr-stop.is-goal.is-current .lr-node{
  box-shadow:0 0 0 6px var(--lr-soft),0 4px 12px rgba(31,138,91,.16);
}
.lr-stop.is-locked .lr-node{
  filter:saturate(.55);
  border-color:#D5DEE8;
  color:#6B7C8E;
}
.lr-stop.is-pending .lr-node,
.lr-stop.is-next .lr-node{
  border-color:var(--lr-edge);
}

.lr-card.station{
  width:100%;
  min-width:0;
  min-height:168px;
  margin:0;
  padding:16px 12px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:6px;
  flex:1;
  background:linear-gradient(180deg,color-mix(in srgb,var(--lr-soft) 92%,#fff) 0%,color-mix(in srgb,var(--lr-soft) 48%,#fff) 100%);
  color:#122033;
  border:1px solid var(--lr-edge) !important;
  border-radius:14px;
  box-shadow:inset 0 4px 0 color-mix(in srgb,var(--lr) 72%,#fff),0 1px 4px rgba(7,42,78,.05);
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  filter:none;
  opacity:1;
}
.lr-card.station > .icon,
.lr-card.station > .station-number{display:none}
.lr-card > .work-ico{
  width:34px;height:34px;border-radius:10px;
  background:#fff;color:var(--lr);
  box-shadow:inset 0 0 0 1px var(--lr-edge);
  margin:2px 0 4px;
}
.lr-card > .work-ico svg{width:18px;height:18px}
.lr-name{
  margin:0;
  font-size:clamp(12px, 1.05vw, 14px);
  font-weight:800;
  color:#0B3A6B;
  line-height:1.28;
  letter-spacing:-0.02em;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  -webkit-hyphens:none;
  white-space:normal;
  width:100%;
  max-width:100%;
}
.lr-purpose{
  font-size:12px;
  color:#3D5166;
  line-height:1.3;
  font-weight:500;
}
.lr-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  margin-top:auto;
  min-height:48px;
  padding:8px 10px;
  border-radius:12px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
  background:#fff;
  color:var(--lr-ink);
  border:1px solid var(--lr-edge);
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 3px 8px rgba(7,42,78,.08);
}
.lr-cta-ico{
  width:26px;height:26px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--lr-soft);
  color:var(--lr);
  flex-shrink:0;
}
.lr-cta-ico .work-ico{
  width:26px;height:26px;margin:0;
  background:transparent;box-shadow:none;color:inherit;
}
.lr-cta-ico .work-ico svg{width:14px;height:14px}
.lr-cta-label{line-height:1.1}
.lr-hint{
  display:none;
  margin:0;
  font-size:11px;
  color:#6B7C8E;
  font-style:normal;
  font-weight:600;
}

.lr-stop.is-completed .lr-card{
  background:linear-gradient(180deg,color-mix(in srgb,var(--lr-soft) 86%,#fff),color-mix(in srgb,var(--lr-soft) 40%,#fff));
}
.lr-stop.is-completed .lr-cta{
  background:#fff;
  color:var(--lr-ink);
  border:1.5px solid var(--lr);
}
.lr-stop.is-completed .lr-cta-ico{background:var(--lr);color:#fff}
.lr-stop.is-current .lr-card{
  background:linear-gradient(180deg,var(--lr-soft),color-mix(in srgb,var(--lr-soft) 55%,#fff));
  border-color:color-mix(in srgb,var(--lr) 45%,#fff) !important;
  box-shadow:inset 0 5px 0 var(--lr),0 8px 18px rgba(7,42,78,.1);
}
.lr-stop.is-current .lr-cta{
  background:var(--lr);
  color:#fff;
  border-color:transparent;
  box-shadow:0 8px 18px color-mix(in srgb,var(--lr) 38%,transparent);
}
.lr-stop.is-current .lr-cta-ico{background:#fff;color:var(--lr)}
.lr-stop.is-current .lr-hint{display:block}
.lr-stop.is-next .lr-cta{
  background:#fff;
  color:var(--lr-ink);
  border:1.5px solid var(--lr);
}
.lr-stop.is-next .lr-cta-ico{background:var(--lr);color:#fff}
.lr-stop.is-pending .lr-cta{
  background:color-mix(in srgb,var(--lr-soft) 28%,#fff);
}
.lr-stop.is-locked .lr-card{
  cursor:not-allowed;
  background:linear-gradient(180deg,#f7f9fc,color-mix(in srgb,var(--lr-soft) 18%,#fff));
  border-color:#E4EBF3 !important;
  box-shadow:inset 0 4px 0 #D5DEE8,0 1px 4px rgba(7,42,78,.04);
  filter:saturate(.7);
}
.lr-stop.is-locked .lr-cta{
  background:#F4F7FB;
  color:#6B7C8E;
  border-color:#E4EBF3;
  box-shadow:none;
}
.lr-stop.is-locked .lr-cta-ico{background:#E8EEF4;color:#6B7C8E}
.lr-stop.is-goal:not(.is-locked) .lr-card{
  box-shadow:inset 0 4px 0 color-mix(in srgb,var(--lr) 72%,#fff),0 1px 4px rgba(31,138,91,.08);
}

.lr-card.station:hover{
  filter:none;
  transform:translateY(-2px);
  box-shadow:inset 0 4px 0 color-mix(in srgb,var(--lr) 85%,#fff),0 8px 16px rgba(7,42,78,.12);
  border-color:color-mix(in srgb, var(--lr) 36%, #fff) !important;
}
.lr-stop.is-current .lr-card:hover{
  box-shadow:inset 0 5px 0 var(--lr),0 10px 20px rgba(7,42,78,.12);
}
.lr-stop.is-locked .lr-card:hover{
  transform:none;
  filter:saturate(.7);
  box-shadow:inset 0 4px 0 #D5DEE8,0 1px 4px rgba(7,42,78,.04);
}
.lr-card.station:focus-visible{
  outline:2px solid #3EC6E0;
  outline-offset:2px;
}

.lr-progress{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:14px 0 0;
  padding:10px 12px 2px;
  border-top:1px solid #E8EEF4;
  font-size:12px;
  color:#3D5166;
}
.lr-progress b{color:#0B3A6B;font-weight:800}
.lr-bar{
  flex:1;
  min-width:120px;
  height:8px;
  border-radius:99px;
  background:#E8EEF4;
  overflow:hidden;
  display:block;
}
.lr-bar>i{
  display:block;
  height:100%;
  border-radius:99px;
  background:color-mix(in srgb, #1558A0 55%, #3EC6E0);
}

/* Mini ruta en tarjetas de módulo (misma identidad, escala compacta). */
.lr-mini{
  --lr-fill:0%;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0;
  position:relative;
  margin:8px 0 10px;
  padding:4px 2px;
}
.lr-mini::before,
.lr-mini::after{
  content:"";
  position:absolute;
  left:8px;right:8px;top:50%;
  height:2px;border-radius:99px;
  transform:translateY(-50%);
  pointer-events:none;
}
.lr-mini::before{background:#E4EBF3}
.lr-mini::after{
  right:auto;
  width:calc((100% - 16px) * var(--lr-fill) / 100);
  background:color-mix(in srgb, #1558A0 42%, #3EC6E0);
}
.lr-mini-stop{
  position:relative;z-index:1;
  width:26px;height:26px;border-radius:50%;
  display:grid;place-items:center;
  background:#fff;
  border:1px solid #D5DEE8;
  color:#3D5166;
  font-size:11px;font-weight:800;
}
.lr-mini-stop.is-completed{
  border-color:#C5E6D4;color:#1F8A5B;background:#E6F6EE;
}
.lr-mini-stop.is-current{
  border-color:#1558A0;color:#1558A0;
  box-shadow:0 0 0 3px #E8F1FB;
  background:#fff;
}
.lr-mini-stop.is-s1.is-current{border-color:#3EC6E0;color:#0B3A6B;box-shadow:0 0 0 3px #D6F4FA}
.lr-mini-stop.is-s2.is-current{border-color:#1558A0;color:#1558A0}
.lr-mini-stop.is-s3.is-current{border-color:#6A5A9A;color:#6A5A9A;box-shadow:0 0 0 3px #F3EFFA}
.lr-mini-stop.is-s4.is-current{border-color:#C47A12;color:#C47A12;box-shadow:0 0 0 3px #FFF4E0}
.lr-mini-stop.is-s5.is-current{border-color:#1F8A5B;color:#1F8A5B;box-shadow:0 0 0 3px #E6F6EE}

body[data-station="1"] .panel.route-panel.lr,
body[data-station="2"] .panel.route-panel.lr,
body[data-station="3"] .panel.route-panel.lr,
body[data-station="4"] .panel.route-panel.lr,
body[data-station="5"] .panel.route-panel.lr{
  padding:16px 18px 12px;
  border-radius:16px;
  box-shadow:0 1px 4px rgba(7,42,78,.06);
  background:#fff;
}

body.high-contrast .panel.route-panel.lr,
body.high-contrast .lr-card.station,
body.high-contrast .lr-node,
body.high-contrast .lr-mini-stop{
  border:2px solid #000 !important;
  box-shadow:none !important;
  background:#fff !important;
  color:#000 !important;
}
body.high-contrast .lr-track::before,
body.high-contrast .lr-mini::before{background:#000}
body.high-contrast .lr-track::after,
body.high-contrast .lr-mini::after{background:#000}
body.high-contrast .lr-cta,
body.high-contrast .lr-state{border:2px solid #000;background:#fff;color:#000;box-shadow:none}
body.high-contrast .lr-stop.is-current .lr-cta,
body.high-contrast .lr-stop.is-current .lr-state{background:#000;color:#fff}
body.high-contrast .lr-cta-ico{background:#fff !important;color:#000 !important;box-shadow:none}

body.hivis .lr-card.station,
body.no-mouse .lr-card.station{border-width:2px !important}

body.simple-visual .lr-hint{display:none !important}

@media (max-width:1100px){
  .lr-node{width:40px;height:40px;font-size:15px}
  .lr-stop.is-current .lr-node{width:46px;height:46px}
  .lr-name{font-size:13px;letter-spacing:-0.03em}
  .lr-purpose{font-size:11px}
  .lr-card.station{padding:10px 8px 8px}
  .lr-track{gap:6px}
  .lr-track::before,.lr-track::after{top:28px}
}
@media (max-width:700px){
  .lr-track{
    grid-template-columns:1fr;
    gap:0;
    padding:0;
  }
  .lr-track::before,
  .lr-track::after{
    left:21px;right:auto;top:22px;bottom:22px;
    width:3px;height:auto;
  }
  .lr-track::after{
    width:3px;
    height:calc((100% - 44px) * var(--lr-fill) / 100);
  }
  .lr-stop{
    flex-direction:row;
    align-items:stretch;
    gap:12px;
    padding:8px 0;
  }
  .lr-node{
    position:static;
    transform:none;
    margin:0;
    flex-shrink:0;
    align-self:center;
  }
  .lr-stop.is-current .lr-node{top:auto}
  .lr-stop.is-current .lr-node{width:48px;height:48px}
  .lr-card.station{
    align-items:stretch;
    text-align:left;
    min-height:96px;
    padding:12px 12px 10px;
  }
  .lr-cta{justify-content:flex-start}
  .lr-card .work-ico{margin:0}
  .lr-progress{padding-top:12px}
}
@media (prefers-reduced-motion:reduce){
  .lr-card.station,
  .lr-node{transition:none}
  .lr-card.station:hover{transform:none}
}
body.reduce-motion .lr-card.station:hover{transform:none}

/* Mejora visual · tarjetas de estaciones (ruta de aprendizaje) */
.lr-card.station{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  min-height:172px;
}
/* burbuja orgánica decorativa abajo-derecha en el color de la estación */
.lr-card.station::after{
  content:"";
  position:absolute;
  right:-26px;bottom:-26px;
  width:104px;height:104px;
  border-radius:46% 54% 42% 58% / 54% 46% 54% 46%;
  background:color-mix(in srgb, var(--lr) 13%, transparent);
  pointer-events:none;
  z-index:0;
}
.lr-card.station >*{position:relative;z-index:1}
.lr-stop.is-current .lr-card.station::after{
  background:color-mix(in srgb, var(--lr) 20%, transparent);
}
/* ícono en círculo pastel con anillo suave y destello */
.lr-card > .work-ico{
  width:38px;height:38px;
  border-radius:50%;
  background:color-mix(in srgb, var(--lr-soft) 62%, #fff);
  box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--lr) 24%, #fff);
}
.lr-card > .work-ico::after{
  content:"";
  position:absolute;
  top:-5px;right:-5px;
  width:9px;height:9px;
  border-radius:50%;
  background:color-mix(in srgb, var(--lr) 65%, #fff);
  box-shadow:0 0 0 2px #fff;
}
/* nodo numerado con anillo temático y sombra suave */
.lr-node{
  box-shadow:0 0 0 4px #fff, 0 6px 14px rgba(7,42,78,.14);
  background:color-mix(in srgb, var(--lr-soft) 55%, #fff);
  border-color:color-mix(in srgb, var(--lr) 55%, #fff);
}
.lr-stop.is-current .lr-node{
  background:var(--lr);
  color:#fff;
}
.lr-stop.is-current .lr-node .lr-num{color:#fff}
/* píldoras de estado más redondeadas y con jerarquía */
.lr-cta{
  border-radius:999px;
  min-height:40px;
}
.lr-stop.is-current .lr-cta{
  box-shadow:0 6px 14px color-mix(in srgb, var(--lr) 34%, transparent);
}
/* sombra y aire de tarjeta */
.lr-card.station{
  box-shadow:inset 0 4px 0 color-mix(in srgb,var(--lr) 72%,#fff),0 10px 24px rgba(7,42,78,.10);
}

/* Título grande de la ruta (referencia "Ruta de aprendizaje de las 5 Estaciones") */
.lr-head-journey{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
  padding-right:26px;
  position:relative;
}
.lr-head-journey .lr-head-ico{
  width:56px;height:56px;flex-shrink:0;
  display:grid;place-items:center;
  border-radius:16px;
  background:#EAF1FF;
  color:#2B6FC3;
}
.lr-head-journey .lr-head-ico .work-ico{width:26px;height:26px}
.lr-head-journey .lr-head-ico .work-ico svg{width:26px;height:26px}
.lr-head-journey .lr-head-text{min-width:0}
.lr-head-journey .lr-head-text h3{
  margin:0;font-size:15px;font-weight:800;color:#1B3FA0;line-height:1.1;
}
.lr-head-journey .lr-head-text h2{
  margin:0;font-size:34px;font-weight:900;letter-spacing:-.02em;
  color:#16A6C8;line-height:1.02;
}
.lr-head-journey .lr-head-sep{
  width:2px;height:54px;flex-shrink:0;background:#D6DFF2;
}
.lr-head-journey .lr-head-lead{
  margin:0;flex:1;min-width:0;
  font-size:13px;color:#3D5166;line-height:1.45;font-weight:500;
}
.lr-head-journey .lr-head-motto{
  flex-shrink:0;
  font-style:italic;font-weight:700;color:#1B3FA0;
  font-size:15px;text-align:right;line-height:1.25;
  position:relative;padding-bottom:5px;
  transform:rotate(-1.5deg);
}
.lr-head-journey .lr-head-motto::after{
  content:"";position:absolute;left:0;right:4px;bottom:0;height:3px;
  border-radius:99px;background:#2563EB;opacity:.5;
}
@media(max-width:900px){
  .lr-head-journey{flex-wrap:wrap;gap:10px}
  .lr-head-journey .lr-head-sep{display:none}
  .lr-head-journey .lr-head-lead{flex-basis:100%}
  .lr-head-journey .lr-head-motto{display:block}
  .lr-head-journey .lr-head-text h2{font-size:26px}
}

/* lr-teen-stations-20260919 — ruta visual 3°/4° medio */
.lr-track{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px !important;
  align-items:stretch;
  padding:8px 2px 4px;
}
.lr-stop{
  display:flex;
  flex-direction:column;
  gap:10px;
  position:relative;
}
.lr-card.station{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:0 !important;
  padding:0 !important;
  min-height:292px;
  overflow:hidden;
  border-radius:18px !important;
  border:1.5px solid color-mix(in srgb, var(--lr) 35%, #D5DEEA) !important;
  background:#fff !important;
  box-shadow:0 10px 28px rgba(7,31,69,.08) !important;
  text-align:left !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.lr-card.station:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 16px 34px rgba(7,31,69,.14) !important;
}
.lr-media{
  position:relative;
  display:block;
  height:118px;
  overflow:hidden;
  background:#0B3A6B;
}
.lr-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transform:scale(1.02);
  transition:transform .25s ease;
}
.lr-card.station:hover .lr-media img{transform:scale(1.06)}
.lr-media-shade{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(7,31,69,.08) 0%,rgba(7,31,69,.55) 100%);
  pointer-events:none;
}
.lr-here-pill,
.lr-done-pill{
  position:absolute;
  left:10px;bottom:10px;
  z-index:2;
  padding:5px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.02em;
  line-height:1;
}
.lr-here-pill{
  background:#0F7A40;
  color:#fff;
  box-shadow:0 6px 14px rgba(15,122,64,.35);
}
.lr-done-pill{
  background:rgba(255,255,255,.92);
  color:#0B3A6B;
}
.lr-body{
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:12px 12px 14px;
  flex:1;
}
.lr-card > .work-ico,
.lr-body > .work-ico{
  width:34px;height:34px;
  margin:0 !important;
  border-radius:11px;
  display:grid;place-items:center;
  background:color-mix(in srgb, var(--lr) 16%, #fff);
  color:color-mix(in srgb, var(--lr) 85%, #0B3A6B);
  box-shadow:none;
}
.lr-card > .work-ico svg,
.lr-body > .work-ico svg{width:18px;height:18px}
.lr-name{
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  color:#071F45 !important;
  letter-spacing:-.01em;
}
.lr-purpose{
  font-size:12px !important;
  color:#0B3A6B !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  opacity:.92;
}
.lr-hint{
  display:block;
  margin:2px 0 0;
  font-size:11px;
  font-weight:800;
  color:#0F7A40;
  font-style:normal;
}
.lr-cta{
  margin-top:auto;
  align-self:stretch;
  justify-content:center;
  min-height:34px;
  border-radius:999px !important;
  font-weight:800 !important;
  font-size:11px !important;
  letter-spacing:.03em;
}

/* Estación actual — sobresale */
.lr-stop.is-current .lr-card.station{
  border-color:#0F7A40 !important;
  box-shadow:
    0 0 0 3px rgba(15,122,64,.22),
    0 18px 36px rgba(15,122,64,.18) !important;
  transform:translateY(-4px) scale(1.02);
  z-index:2;
}
.lr-stop.is-current .lr-node .lr-num,
.lr-stop.is-current .lr-node{
  background:#0F7A40 !important;
  color:#fff !important;
  border-color:#0F7A40 !important;
  box-shadow:0 0 0 5px rgba(15,122,64,.2);
}
.lr-stop.is-current .lr-cta{
  background:#0F7A40 !important;
  color:#fff !important;
  border-color:#0F7A40 !important;
}

/* Completada */
.lr-stop.is-completed .lr-media-shade{
  background:linear-gradient(180deg,rgba(15,122,64,.12),rgba(7,31,69,.5));
}
.lr-stop.is-completed .lr-card.station{
  border-color:#8FCBAA !important;
}

/* Bloqueada */
.lr-stop.is-locked .lr-media img{
  filter:grayscale(.55) brightness(.92);
}
.lr-stop.is-locked .lr-card.station{
  opacity:.78;
}
.lr-stop.is-locked .lr-card.station:hover{
  transform:none !important;
}

/* Ampolleta estación 3 — marcada */
.lr-stop.s3 .lr-body > .work-ico,
.lr-stop.s3 .lr-card > .work-ico{
  background:linear-gradient(160deg,#FFE08A,#F5B83A) !important;
  color:#7A4A00 !important;
  box-shadow:0 4px 12px rgba(245,184,58,.35);
}
.lr-stop.s3.is-current .lr-body > .work-ico,
.lr-stop.s3.is-current .lr-card > .work-ico{
  background:linear-gradient(160deg,#FFE9A8,#F0A020) !important;
  color:#5C3700 !important;
  outline:2px solid #fff;
  outline-offset:2px;
}

/* Motto siempre visible y completo */
.lr-head-journey .lr-head-motto{
  display:block !important;
  max-width:11.5rem;
  font-size:15px !important;
  font-weight:800 !important;
  color:#1B3FA0 !important;
  line-height:1.25 !important;
}
.lr-head-journey .lr-head-motto::after{
  height:3px;
  background:#2563EB;
  opacity:.65;
}

@media(max-width:1100px){
  .lr-track{grid-template-columns:repeat(5,minmax(140px,1fr)); gap:10px !important}
  .lr-media{height:96px}
  .lr-card.station{min-height:268px}
  .lr-name{font-size:13px !important}
}
@media(max-width:820px){
  .lr-track{grid-template-columns:1fr 1fr; gap:12px !important}
  .lr-stop.is-current .lr-card.station{transform:none; scale:1}
}
@media(max-width:520px){
  .lr-track{grid-template-columns:1fr}
}

/* lr-pedagogy-20260919 */
.lr-pedagogy{
  margin:0 0 16px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid #D7E6F8;
  background:linear-gradient(120deg,#F7FBFF 0%,#EEF7F2 55%,#F7FBFF 100%);
  box-shadow:0 8px 20px rgba(7,42,78,.05);
}
.lr-pedagogy-kicker{
  margin:0 0 6px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#1B6B45;
}
.lr-pedagogy-text{
  margin:0;
  font-size:14px;
  line-height:1.45;
  color:#0B3A6B;
  font-weight:600;
}
.lr-pedagogy-text b{color:#071F45;font-weight:900}
.lr-pedagogy-formula{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  margin:10px 0 0;
  font-size:12px;font-weight:800;color:#0B3A6B;
}
.lr-pedagogy-formula span{
  padding:4px 10px;border-radius:999px;
  background:#fff;border:1px solid #C9DCF3;
}
.lr-pedagogy-formula i{font-style:normal;color:#1B6B45;font-weight:900}
.lr-pedagogy-formula em{font-style:normal;color:#1B3FA0;margin-left:2px}

/* Explorar: estaciones disponibles más invitantes */
.lr-stop.is-next .lr-card.station,
.lr-stop.is-pending .lr-card.station{
  cursor:pointer;
}
.lr-stop.is-next .lr-card.station{
  border-color:#7EB6F0 !important;
  box-shadow:0 10px 24px rgba(30,111,232,.12) !important;
}
.lr-stop.is-next .lr-cta{
  background:#EAF3FF !important;
  color:#0B4FBF !important;
  border-color:#9EC4F0 !important;
}
.lr-stop.is-current .lr-here-pill{
  animation:lrPulse 1.8s ease-in-out infinite;
}
@keyframes lrPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(15,122,64,.35)}
  50%{box-shadow:0 0 0 8px rgba(15,122,64,0)}
}
@media (prefers-reduced-motion:reduce){
  .lr-stop.is-current .lr-here-pill{animation:none}
}

/* lr-header-mockup-20260919 */
.lr-head-journey{
  display:grid !important;
  grid-template-columns:minmax(210px,1.05fr) auto minmax(220px,1.35fr) minmax(180px,.95fr);
  align-items:center;
  gap:14px 18px;
  margin:0 0 14px;
  padding:4px 4px 2px 0;
  position:relative;
}
.lr-head-brand{display:flex;align-items:center;gap:12px;min-width:0}
.lr-head-journey .lr-head-ico{
  width:56px;height:56px;flex-shrink:0;display:grid;place-items:center;
  border-radius:50%;background:#E8F1FF;color:#1B3FA0;
  box-shadow:inset 0 0 0 1px #D5E4FF;
}
.lr-head-journey .lr-head-ico .work-ico,
.lr-head-journey .lr-head-ico .work-ico svg{width:26px;height:26px}
.lr-head-journey .lr-head-text{min-width:0}
.lr-head-journey .lr-head-text h3{
  margin:0;font-size:14px;font-weight:700;color:#1B3A6B;line-height:1.15;
}
.lr-head-journey .lr-head-text h2{
  margin:2px 0 8px;font-size:30px;font-weight:900;letter-spacing:-.02em;
  color:#0B2A5C;line-height:1.02;
}
.lr-head-segments{display:flex;gap:4px;width:min(100%,168px)}
.lr-head-segments i{flex:1;height:6px;border-radius:99px;display:block}
.lr-head-segments i:nth-child(1){background:#7EB6F0}
.lr-head-segments i:nth-child(2){background:#F5C84C}
.lr-head-segments i:nth-child(3){background:#8FD39A}
.lr-head-segments i:nth-child(4){background:#2F9E5B}
.lr-head-segments i:nth-child(5){background:#8B6CCF}
.lr-head-journey .lr-head-sep{
  width:1px;height:58px;background:#D5DCEC;justify-self:center;
}
.lr-head-focus{display:flex;align-items:flex-start;gap:10px;min-width:0}
.lr-head-focus-ico{
  width:28px;height:28px;flex-shrink:0;margin-top:2px;color:#0B2A5C;
}
.lr-head-focus-ico .work-ico,.lr-head-focus-ico .work-ico svg{width:22px;height:22px}
.lr-head-focus-title{
  margin:0 0 4px;font-size:15px;font-weight:900;color:#0B2A5C;line-height:1.25;
}
.lr-head-journey .lr-head-lead{
  margin:0;font-size:13px;line-height:1.4;color:#4A5D73;font-weight:500;
}
.lr-head-journey-aside{
  display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:0;
}
.lr-head-journey .lr-head-motto{
  margin:0;font-style:italic;font-weight:700;color:#123A7A;
  font-size:15px;text-align:right;line-height:1.2;
  transform:rotate(-2deg);position:relative;
}
.lr-head-journey .lr-head-motto b{
  font-size:1.15em;font-weight:900;
  text-decoration:underline;text-decoration-thickness:3px;
  text-underline-offset:3px;text-decoration-color:#2B6FC3;
}
.lr-head-art{
  width:150px;height:auto;max-height:72px;object-fit:contain;
  object-position:right bottom;display:block;
}
.lr-pedagogy{
  display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;
  margin:0 0 16px;padding:14px 16px;
  border-radius:16px;border:1px solid #D3E2F4;
  background:linear-gradient(90deg,#F7FBFF 0%,#F3F8FC 55%,#F7FBFF 100%);
  box-shadow:0 6px 18px rgba(7,42,78,.05);
}
.lr-pedagogy-ico{
  width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;
  border-radius:50%;background:#E8F1FF;color:#1B3FA0;
}
.lr-pedagogy-ico .work-ico,.lr-pedagogy-ico .work-ico svg{width:22px;height:22px}
.lr-pedagogy-copy{flex:1 1 240px;min-width:0}
.lr-pedagogy-kicker{
  margin:0 0 4px;font-size:11px;font-weight:900;letter-spacing:.06em;
  text-transform:uppercase;color:#1B8A4A;
}
.lr-pedagogy-text{
  margin:0;font-size:14px;line-height:1.4;color:#0B2A5C;font-weight:700;
}
.lr-pedagogy-text b{font-weight:900}
.lr-pedagogy-sub{
  margin:4px 0 0;font-size:12px;color:#5A6B7D;font-weight:500;
}
.lr-pedagogy-formula{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;
  margin:0;margin-left:auto;font-size:12px;font-weight:800;color:#0B2A5C;
}
.lr-pedagogy-formula i{font-style:normal;color:#6B7C90;font-weight:900}
.lr-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:999px;background:#fff;
  border:1px solid #C9D8EC;color:#0B2A5C;white-space:nowrap;
}
.lr-pill .work-ico,.lr-pill .work-ico svg{width:14px;height:14px}
.lr-pill-result{
  background:#E7F7EC;border-color:#8FD39A;color:#146B3A;
}
@media(max-width:980px){
  .lr-head-journey{
    grid-template-columns:1fr;
    gap:12px;
  }
  .lr-head-journey .lr-head-sep{display:none}
  .lr-head-journey-aside{align-items:flex-start}
  .lr-head-journey .lr-head-motto{text-align:left;transform:none}
  .lr-head-art{margin-left:0}
  .lr-pedagogy-formula{margin-left:0}
}

/* lr-header-class-aliases-20260919 */
.lr-head-focus{display:flex;align-items:flex-start;gap:10px;min-width:0}
.lr-head-focus-ico{width:28px;height:28px;flex-shrink:0;margin-top:2px;color:#0B2A5C}
.lr-head-focus-ico .work-ico,.lr-head-focus-ico .work-ico svg{width:22px;height:22px}
.lr-head-focus-title{margin:0 0 4px;font-size:15px;font-weight:900;color:#0B2A5C;line-height:1.25}
.lr-pedagogy-copy{flex:1 1 240px;min-width:0}
.lr-pedagogy > .lr-pedagogy-ico,
.lr-pedagogy-ico{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#E8F1FF;color:#1B3FA0}


/* lr-stations-mockup-20260919 */
.lr-stop.s1{--lr:#2F7FE8;--lr-soft:#E8F2FF;--lr-edge:#B7D4F7;--lr-ink:#0B3A6B}
.lr-stop.s2{--lr:#E67E22;--lr-soft:#FFF1E4;--lr-edge:#F0C9A0;--lr-ink:#7A3B0A}
.lr-stop.s3{--lr:#7B5CDB;--lr-soft:#F2EDFF;--lr-edge:#D2C4F5;--lr-ink:#3B1D7A}
.lr-stop.s4{--lr:#D4A017;--lr-soft:#FFF8E6;--lr-edge:#EED89A;--lr-ink:#6B4E08}
.lr-stop.s5{--lr:#1F9E5B;--lr-soft:#E7F7EE;--lr-edge:#A8DDBF;--lr-ink:#0B4A2E}

.lr .lr-track{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
  padding:26px 2px 8px !important;
  margin:0 !important;
}
.lr .lr-track::before,
.lr .lr-track::after{display:none !important}

.lr .lr-stop{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  padding-top:0 !important;
  height:auto !important;
  min-width:0;
  gap:0 !important;
}
.lr .lr-node{
  position:absolute !important;
  top:-14px !important; left:50% !important;
  transform:translateX(-50%) !important;
  z-index:4 !important;
  width:36px !important; height:36px !important;
  border-radius:50% !important;
  background:var(--lr) !important; color:#fff !important;
  border:3px solid #fff !important;
  box-shadow:0 4px 12px color-mix(in srgb,var(--lr) 35%,transparent) !important;
  font-size:15px !important; font-weight:900 !important;
  display:grid !important; place-items:center !important;
}
.lr .lr-stop.is-current .lr-node{
  width:40px !important; height:40px !important; top:-16px !important;
  box-shadow:0 0 0 5px var(--lr-soft),0 6px 16px color-mix(in srgb,var(--lr) 40%,transparent) !important;
}
.lr .lr-check{display:none !important}

.lr .lr-card.station{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  text-align:left !important;
  gap:0 !important;
  padding:0 !important;
  min-height:308px !important;
  border-radius:18px !important;
  border:2px solid var(--lr-edge) !important;
  background:#fff !important;
  box-shadow:0 10px 24px rgba(7,42,78,.08) !important;
  overflow:hidden !important;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.lr .lr-card.station:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(7,42,78,.12) !important;
}
.lr .lr-stop.is-current .lr-card.station{
  border-color:var(--lr) !important;
  border-width:3px !important;
  box-shadow:0 0 0 4px var(--lr-soft),0 16px 32px color-mix(in srgb,var(--lr) 22%,transparent) !important;
}
.lr .lr-stop.is-locked .lr-card.station{
  cursor:not-allowed; opacity:.8; filter:saturate(.72);
}

.lr .lr-media{
  position:relative !important;
  display:block !important;
  height:118px !important;
  overflow:hidden !important;
  background:#0B3A6B !important;
  border-radius:0 !important;
}
.lr .lr-media img{
  width:100% !important; height:100% !important;
  object-fit:cover !important; object-position:center !important;
  display:block !important;
}
.lr .lr-here-pill{
  position:absolute !important; left:10px !important; bottom:10px !important;
  z-index:2 !important;
  display:inline-flex !important; align-items:center !important; gap:6px !important;
  padding:5px 10px !important; border-radius:999px !important;
  background:#0F7A40 !important; color:#fff !important;
  font-size:11px !important; font-weight:800 !important;
  box-shadow:0 6px 14px rgba(15,122,64,.35) !important;
}

.lr .lr-body{
  display:flex !important; flex-direction:column !important;
  align-items:flex-start !important; text-align:left !important;
  gap:8px !important; padding:12px 12px 14px !important; flex:1 !important;
}
.lr .lr-body > .work-ico{
  width:38px !important; height:38px !important; border-radius:50% !important;
  background:var(--lr) !important; color:#fff !important;
  box-shadow:none !important; margin:0 0 2px !important;
}
.lr .lr-body > .work-ico svg{width:18px !important; height:18px !important; stroke:#fff !important}

.lr .lr-name{
  margin:0 !important; font-size:14px !important; font-weight:900 !important;
  color:#0B2A5C !important; line-height:1.25 !important; text-align:left !important;
  width:100%;
}
.lr .lr-purpose{
  margin:0 !important; font-size:12px !important; font-weight:600 !important;
  color:#5A6B7D !important; line-height:1.35 !important; text-align:left !important;
}
.lr .lr-hint{
  display:block !important; margin:0 !important;
  font-size:12px !important; font-style:normal !important; font-weight:800 !important;
  color:#0F7A40 !important;
}

.lr .lr-cta,
.lr .lr-state{
  display:flex !important; align-items:center !important; justify-content:center !important;
  gap:8px !important; width:100% !important; margin-top:auto !important;
  min-height:44px !important; padding:10px 12px !important;
  border-radius:12px !important;
  font-size:12px !important; font-weight:900 !important; letter-spacing:.03em !important;
  text-transform:uppercase !important;
  background:#fff !important; color:var(--lr) !important;
  border:1.5px solid var(--lr) !important;
  box-shadow:none !important; position:relative !important;
}
.lr .lr-stop.is-current .lr-cta,
.lr .lr-stop.is-current .lr-state{
  background:var(--lr) !important; color:#fff !important; border-color:transparent !important;
  box-shadow:0 10px 20px color-mix(in srgb,var(--lr) 35%,transparent) !important;
}
.lr .lr-stop.is-current .lr-cta::after,
.lr .lr-stop.is-current .lr-state::after{
  content:"" !important; position:absolute !important; right:8px !important; top:-10px !important;
  width:22px !important; height:14px !important;
  background:
    radial-gradient(circle at 20% 80%, transparent 42%, #fff 43%, #fff 56%, transparent 57%),
    radial-gradient(circle at 60% 25%, transparent 42%, #fff 43%, #fff 54%, transparent 55%),
    radial-gradient(circle at 90% 70%, transparent 42%, #fff 43%, #fff 52%, transparent 53%) !important;
  opacity:.7 !important; pointer-events:none !important;
}
.lr .lr-stop.is-completed .lr-cta,
.lr .lr-stop.is-completed .lr-state{
  background:color-mix(in srgb,var(--lr-soft) 75%,#fff) !important;
  color:var(--lr-ink) !important; border-color:var(--lr-edge) !important;
}

.lr .lr-progress{
  display:flex !important; align-items:center !important; gap:12px !important; flex-wrap:wrap !important;
  margin:18px 0 0 !important; padding:12px 14px !important;
  border-radius:14px !important; border:1px solid #D7E6F8 !important;
  background:linear-gradient(90deg,#F3F8FF,#EEF7F3) !important;
}
.lr .lr-progress-label{
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  font-size:13px !important; color:#3D5166 !important; font-weight:600 !important;
}
.lr .lr-progress-label .work-ico{width:22px !important; height:22px !important; color:#1F9E5B !important}
.lr .lr-progress-label b{color:#0B2A5C !important; font-weight:900 !important}
.lr .lr-progress-track{
  position:relative !important; flex:1 !important; min-width:160px !important; height:10px !important;
  border-radius:99px !important; background:#D9E6F5 !important; overflow:visible !important;
  display:block !important;
}
.lr .lr-progress-fill{
  display:block !important; height:100% !important; border-radius:99px !important;
  background:linear-gradient(90deg,#2F7FE8,#1F9E5B) !important;
}
.lr .lr-progress-dots{
  position:absolute !important; inset:0 !important;
  display:flex !important; justify-content:space-between !important; align-items:center !important;
  padding:0 2px !important; pointer-events:none !important;
}
.lr .lr-progress-dots em{
  width:12px !important; height:12px !important; border-radius:50% !important;
  background:#fff !important; border:2px solid #9BB6D4 !important;
  box-sizing:border-box !important; display:block !important; font-style:normal !important;
}
.lr .lr-progress-dots em.is-done{background:#1F9E5B !important; border-color:#1F9E5B !important}
.lr .lr-progress-dots em.is-here{
  background:#fff !important; border-color:#1F9E5B !important;
  box-shadow:0 0 0 3px #E7F7EE !important;
}
.lr .lr-progress-goal .work-ico{width:24px !important; height:24px !important; color:#1F9E5B !important}

@media(max-width:900px){
  .lr .lr-track{grid-template-columns:1fr 1fr !important}
  .lr .lr-card.station{min-height:0 !important}
}


/* lr-class-aliases-mockup */
.lr .lr-media{position:relative !important;display:block !important;height:118px !important;overflow:hidden !important}
.lr .lr-here-pill{position:absolute !important;left:10px !important;bottom:10px !important;z-index:2 !important;display:inline-flex !important;align-items:center !important;gap:6px !important;padding:5px 10px !important;border-radius:999px !important;background:#0F7A40 !important;color:#fff !important;font-size:11px !important;font-weight:800 !important;box-shadow:0 6px 14px rgba(15,122,64,.35) !important}
.lr .lr-body{display:flex !important;flex-direction:column !important;align-items:flex-start !important;text-align:left !important;gap:8px !important;padding:12px 12px 14px !important;flex:1 !important}
.lr .lr-name{margin:0 !important;font-size:14px !important;font-weight:900 !important;color:#0B2A5C !important;line-height:1.25 !important;text-align:left !important;width:100%}
.lr .lr-purpose{margin:0 !important;font-size:12px !important;font-weight:600 !important;color:#5A6B7D !important;line-height:1.35 !important;text-align:left !important}
.lr .lr-progress-label{display:inline-flex !important;align-items:center !important;gap:8px !important;font-size:13px !important;color:#3D5166 !important;font-weight:600 !important}
.lr .lr-progress-track{position:relative !important;flex:1 !important;min-width:160px !important;height:10px !important;border-radius:99px !important;background:#D9E6F5 !important;overflow:visible !important;display:block !important}
.lr .lr-progress-fill{display:block !important;height:100% !important;border-radius:99px !important;background:linear-gradient(90deg,#2F7FE8,#1F9E5B) !important}
.lr .lr-progress-dots{position:absolute !important;inset:0 !important;display:flex !important;justify-content:space-between !important;align-items:center !important;padding:0 2px !important;pointer-events:none !important}
.lr .lr-progress-dots em{width:12px !important;height:12px !important;border-radius:50% !important;background:#fff !important;border:2px solid #9BB6D4 !important;box-sizing:border-box !important;display:block !important;font-style:normal !important}
.lr .lr-progress-dots em.is-done{background:#1F9E5B !important;border-color:#1F9E5B !important}
.lr .lr-progress-dots em.is-here{background:#fff !important;border-color:#1F9E5B !important;box-shadow:0 0 0 3px #E7F7EE !important}


/* lr-head-banner-extend-20260919 */
.lr-head-journey{
  grid-template-columns: minmax(200px,1.05fr) auto minmax(200px,1.2fr) minmax(260px,1.35fr) !important;
  align-items: center !important;
}
.lr-head-journey-aside.lr-head-banner,
.lr-head-banner{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  min-width:0 !important;
  width:100% !important;
  align-self:stretch !important;
}
.lr-head-banner .lr-head-art,
.lr-head-journey-aside .lr-head-art{
  width:100% !important;
  max-width:440px !important;
  height:auto !important;
  max-height:132px !important;
  object-fit:contain !important;
  object-position:right center !important;
  display:block !important;
}
.lr-head-motto{display:none !important}
@media(max-width:980px){
  .lr-head-journey{
    grid-template-columns:1fr !important;
  }
  .lr-head-banner .lr-head-art,
  .lr-head-journey-aside .lr-head-art{
    max-width:100% !important;
    max-height:150px !important;
    object-position:center !important;
  }
}


/* lr-icons-polish-20260919 */
.lr .lr-head-ico,
.lr .lr-pedagogy-ico{
  width:56px !important;height:56px !important;
  border-radius:50% !important;
  display:grid !important;place-items:center !important;
  background:linear-gradient(160deg,#EAF2FF 0%,#DCEBFF 100%) !important;
  color:#1B4FB5 !important;
  box-shadow:inset 0 0 0 1px #C9DCFF, 0 8px 18px rgba(27,79,181,.12) !important;
}
.lr .lr-head-ico .work-ico,
.lr .lr-pedagogy-ico .work-ico,
.lr .lr-head-focus-ico .work-ico{
  width:26px !important;height:26px !important;
}
.lr .lr-head-focus-ico{
  width:34px !important;height:34px !important;
  border-radius:50% !important;
  display:grid !important;place-items:center !important;
  background:#EEF4FF !important;color:#123A8A !important;
  flex-shrink:0 !important;
}
.lr .lr-body > .work-ico{
  width:42px !important;height:42px !important;border-radius:50% !important;
  background:var(--lr) !important;color:#fff !important;
  display:grid !important;place-items:center !important;
  box-shadow:0 8px 16px color-mix(in srgb,var(--lr) 28%,transparent) !important;
  margin:0 0 4px !important;
}
.lr .lr-body > .work-ico svg{
  width:20px !important;height:20px !important;stroke:#fff !important;stroke-width:1.9 !important;
}
.lr .lr-pill{
  display:inline-flex !important;align-items:center !important;gap:7px !important;
  padding:7px 12px !important;border-radius:999px !important;
  background:#fff !important;border:1px solid #C9D8EC !important;
  color:#0B2A5C !important;font-weight:800 !important;font-size:12px !important;
  box-shadow:0 2px 8px rgba(7,42,78,.05) !important;
}
.lr .lr-pill .work-ico{width:16px !important;height:16px !important;color:#1B4FB5 !important}
.lr .lr-pill.lr-pill-result{
  background:#E8F7EE !important;border-color:#8FD3A8 !important;color:#146B3A !important;
}
.lr .lr-pill.lr-pill-result .work-ico{color:#146B3A !important}
.lr .lr-cta-ico .work-ico,
.lr .lr-cta .work-ico{width:18px !important;height:18px !important}
.lr .lr-cta.is-here .work-ico,
.lr .lr-stop.is-current .lr-cta .work-ico{color:#fff !important}
.lr .lr-stop.s1 .lr-body > .work-ico{background:#2F7FE8 !important}
.lr .lr-stop.s2 .lr-body > .work-ico{background:#E67E22 !important}
.lr .lr-stop.s3 .lr-body > .work-ico{background:#7B5CDB !important}
.lr .lr-stop.s4 .lr-body > .work-ico{background:#D4A017 !important}
.lr .lr-stop.s5 .lr-body > .work-ico{background:#1F9E5B !important}
.lr .lr-head-banner .lr-head-art,
.lr .lr-head-journey-aside .lr-head-art{
  max-width:460px !important;
  max-height:148px !important;
  filter:drop-shadow(0 8px 16px rgba(15,60,120,.08));
}
.lr .lr-pedagogy{align-items:center !important}
.lr .lr-pedagogy-formula{gap:8px !important}


/* lr-art-40pct-20260919 */
.lr .lr-head-journey{
  grid-template-columns: minmax(160px,.9fr) auto minmax(160px,1fr) minmax(360px,1.7fr) !important;
  gap: 12px 16px !important;
}
.lr .lr-head-banner,
.lr .lr-head-journey-aside.lr-head-banner{
  min-width: 300px !important;
  flex: 1 1 auto !important;
}
.lr .lr-head-art,
.lr .lr-head-banner .lr-head-art,
.lr .lr-head-journey-aside .lr-head-art{
  width: 100% !important;
  max-width: 640px !important;
  max-height: 210px !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: right center !important;
  image-rendering: auto;
}
@media (max-width: 980px){
  .lr .lr-head-journey{grid-template-columns: 1fr !important}
  .lr .lr-head-art,
  .lr .lr-head-banner .lr-head-art{
    max-width: 100% !important;
    max-height: 220px !important;
    object-position: center !important;
  }
}


/* lr-icon-definition-20260919 */
.lr .work-ico svg{
  stroke-width: 2.4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}
.lr .lr-head-ico,
.lr .lr-pedagogy-ico{
  width: 58px !important;
  height: 58px !important;
  background: linear-gradient(165deg, #E8F1FF, #D4E6FF) !important;
  color: #0E4BB5 !important;
  box-shadow: inset 0 0 0 1.5px #B7D2FF, 0 8px 18px rgba(14,75,181,.14) !important;
}
.lr .lr-head-ico .work-ico,
.lr .lr-pedagogy-ico .work-ico{
  width: 28px !important;
  height: 28px !important;
  color: #0E4BB5 !important;
}
.lr .lr-head-ico .work-ico svg,
.lr .lr-pedagogy-ico .work-ico svg{
  stroke: #0E4BB5 !important;
  stroke-width: 2.5 !important;
}
.lr .lr-head-focus-ico{
  width: 38px !important;
  height: 38px !important;
  background: #E7F0FF !important;
  color: #0E4BB5 !important;
  box-shadow: inset 0 0 0 1.5px #BFD4FF !important;
}
.lr .lr-head-focus-ico .work-ico{width: 22px !important; height: 22px !important}
.lr .lr-head-focus-ico .work-ico svg{stroke: #0E4BB5 !important; stroke-width: 2.5 !important}

/* Formula pills: tinted chips + dark bold icons */
.lr .lr-pill{
  gap: 8px !important;
  padding: 8px 14px !important;
  background: #F3F7FF !important;
  border: 1.5px solid #B7CDEF !important;
  color: #0B2A5C !important;
  font-weight: 900 !important;
  box-shadow: 0 2px 8px rgba(7,42,78,.06) !important;
}
.lr .lr-pill .work-ico{
  width: 18px !important;
  height: 18px !important;
  color: #0E4BB5 !important;
  flex-shrink: 0 !important;
}
.lr .lr-pill .work-ico svg{
  stroke: #0E4BB5 !important;
  stroke-width: 2.55 !important;
}
.lr .lr-pill.lr-pill-result{
  background: #E5F7EC !important;
  border-color: #7BCF98 !important;
  color: #0F6B38 !important;
}
.lr .lr-pill.lr-pill-result .work-ico,
.lr .lr-pill.lr-pill-result .work-ico svg{
  color: #0F6B38 !important;
  stroke: #0F6B38 !important;
}

/* Station card icons: larger, thicker white glyphs on saturated discs */
.lr .lr-body > .work-ico{
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  box-shadow:
    0 0 0 3px #fff,
    0 8px 18px color-mix(in srgb, var(--lr) 32%, transparent) !important;
}
.lr .lr-body > .work-ico svg{
  width: 22px !important;
  height: 22px !important;
  stroke: #fff !important;
  stroke-width: 2.6 !important;
}
.lr .lr-stop.s1 .lr-body > .work-ico{background: #2A74E8 !important}
.lr .lr-stop.s2 .lr-body > .work-ico{background: #E56F1A !important}
.lr .lr-stop.s3 .lr-body > .work-ico{background: #6F4FD6 !important}
.lr .lr-stop.s4 .lr-body > .work-ico{background: #C9970F !important}
.lr .lr-stop.s5 .lr-body > .work-ico{background: #189A55 !important}

/* CTA icons */
.lr .lr-cta .work-ico,
.lr .lr-cta-ico .work-ico{
  width: 18px !important;
  height: 18px !important;
}
.lr .lr-cta .work-ico svg,
.lr .lr-cta-ico .work-ico svg{
  stroke-width: 2.5 !important;
}
.lr .lr-stop:not(.is-current) .lr-cta .work-ico svg{
  stroke: currentColor !important;
}
.lr .lr-stop.is-current .lr-cta .work-ico svg{
  stroke: #fff !important;
  stroke-width: 2.6 !important;
}

/* Number badges clearer */
.lr .lr-node{
  font-weight: 900 !important;
  letter-spacing: -0.02em !important;
  box-shadow: 0 0 0 3px #fff, 0 6px 14px color-mix(in srgb, var(--lr) 35%, transparent) !important;
}


/* lr-pill-icons-fix-20260919 */
.lr .lr-pedagogy-formula{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px 10px !important;
}
.lr .lr-pedagogy-formula > i{
  font-style:normal !important;
  font-weight:900 !important;
  color:#7A90A8 !important;
  font-size:16px !important;
  line-height:1 !important;
  padding:0 2px !important;
}
.lr .lr-pill{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  min-height:42px !important;
  padding:6px 14px 6px 6px !important;
  border-radius:999px !important;
  background:#F4F8FF !important;
  border:1.5px solid #AFC8EA !important;
  color:#0B2A5C !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  box-shadow:0 2px 8px rgba(11,42,92,.06) !important;
}
.lr .lr-pill-ico{
  width:30px !important;
  height:30px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  flex-shrink:0 !important;
  background:#1F5FCC !important;
  color:#fff !important;
  box-shadow:0 2px 6px rgba(31,95,204,.28) !important;
}
.lr .lr-pill-ico .work-ico{
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#fff !important;
  display:grid !important;
  place-items:center !important;
}
.lr .lr-pill-ico .work-ico svg{
  width:18px !important;
  height:18px !important;
  stroke:#fff !important;
  stroke-width:2.6 !important;
  fill:none !important;
  display:block !important;
}
.lr .lr-pill-txt{display:inline-block !important}
.lr .lr-pill.lr-pill-result{
  background:#E8F7EE !important;
  border-color:#79C894 !important;
  color:#0F6B38 !important;
}
.lr .lr-pill.lr-pill-result .lr-pill-ico{
  background:#1A9A55 !important;
  box-shadow:0 2px 6px rgba(26,154,85,.28) !important;
}
@media (max-width:720px){
  .lr .lr-pill{white-space:normal !important; max-width:100%}
}


/* lr-head-compact-hero-20260919 */
/* Misma anchura que el resto de la página; ilustración protagonista a la derecha */
.panel.route-panel.lr,
.lr.learn-path{
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.lr-head.lr-head-journey{
  display: grid !important;
  grid-template-columns: minmax(168px, 0.95fr) 1px minmax(180px, 1.05fr) minmax(280px, 1.85fr) !important;
  align-items: stretch !important;
  gap: 10px 12px !important;
  margin: 0 0 16px !important;
  padding: 10px 10px 10px 14px !important;
  border-radius: 20px !important;
  border: 1px solid #D7E6F5 !important;
  background:
    linear-gradient(105deg, #FFFFFF 0%, #F7FBFF 42%, #EAF6FF 68%, #E3F4F2 100%) !important;
  box-shadow: 0 8px 22px rgba(11, 42, 92, 0.07) !important;
  overflow: hidden !important;
  min-height: 168px !important;
}
.lr-head-journey .lr-head-brand{
  align-self: center;
  gap: 10px !important;
}
.lr-head-journey .lr-head-ico{
  width: 48px !important;
  height: 48px !important;
  background: #E4F0FF !important;
  color: #1A4FA8 !important;
  box-shadow: 0 0 0 6px rgba(120, 170, 240, 0.22) !important;
}
.lr-head-journey .lr-head-ico .work-ico,
.lr-head-journey .lr-head-ico .work-ico svg{
  width: 22px !important;
  height: 22px !important;
}
.lr-head-journey .lr-head-text h3{
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: #1B3A6B !important;
}
.lr-head-journey .lr-head-text h2{
  margin: 2px 0 7px !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  color: #0B2A5C !important;
  letter-spacing: -0.02em !important;
}
.lr-head-segments{
  width: min(100%, 132px) !important;
  gap: 3px !important;
}
.lr-head-segments i{ height: 5px !important; }
.lr-head-journey .lr-head-sep{
  width: 1px !important;
  height: auto !important;
  align-self: stretch !important;
  margin: 12px 0 !important;
  background: linear-gradient(180deg, transparent, #C9D7E8 15%, #C9D7E8 85%, transparent) !important;
  justify-self: center !important;
}
.lr-head-focus{
  align-self: center !important;
  gap: 8px !important;
}
.lr-head-focus-ico{
  width: 24px !important;
  height: 24px !important;
  color: #1A7A8A !important;
}
.lr-head-focus-title{
  font-size: 13.5px !important;
  font-weight: 900 !important;
  color: #0B2A5C !important;
  margin: 0 0 3px !important;
}
.lr-head-journey .lr-head-lead{
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  color: #4A5D73 !important;
  max-width: 28ch !important;
}
/* Ilustración: protagonista, llena el bloque derecho hasta el borde */
.lr-head-journey-aside.lr-head-banner,
.lr-head-banner{
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  align-self: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: -10px -10px -10px 0 !important;
  padding: 0 !important;
  border-radius: 0 18px 18px 0 !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #D9F0FF 0%, #C8EBDD 55%, #BFE6D4 100%) !important;
}
.lr-head-banner .lr-head-art,
.lr-head-journey-aside .lr-head-art,
.lr-head-art{
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 168px !important;
  max-height: 220px !important;
  object-fit: cover !important;
  object-position: 62% 42% !important;
  display: block !important;
}
@media (max-width: 900px){
  .lr-head.lr-head-journey{
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    padding: 12px !important;
  }
  .lr-head-journey .lr-head-sep{ display: none !important; }
  .lr-head-journey-aside.lr-head-banner,
  .lr-head-banner{
    margin: 4px 0 0 !important;
    border-radius: 14px !important;
    min-height: 160px !important;
  }
  .lr-head-banner .lr-head-art,
  .lr-head-journey-aside .lr-head-art,
  .lr-head-art{
    min-height: 160px !important;
    max-height: 200px !important;
    object-position: center 40% !important;
  }
  .lr-head-journey .lr-head-lead{ max-width: none !important; }
}
@media (min-width: 901px) and (max-width: 1100px){
  .panel.route-panel.lr,
  .lr.learn-path{ max-width: none !important; width: 100% !important; }
  .lr-head.lr-head-journey{
    grid-template-columns: minmax(150px, 0.9fr) 1px minmax(160px, 1fr) minmax(260px, 1.8fr) !important;
  }
}


/* lr-fullwidth-match-page-20260919 */
/* La ruta debe alinear sus bordes con el hero del módulo y el cuerpo de la estación */
#main .panel.route-panel.lr,
#main .lr.learn-path,
.module-layout .panel.route-panel.lr,
.module-layout .lr,
body[data-station] .panel.route-panel.lr{
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#main .panel.route-panel.lr .lr-head-journey,
.module-layout .lr-head-journey{
  width: 100% !important;
}






/* lr-head-banner-full-20260919 */
/* El PNG ya trae marco: cancelamos padding/borde del panel arriba para no ver doble orilla */
.panel.route-panel.lr:has(.lr-head-banner-full),
.lr.learn-path:has(.lr-head-banner-full){
  padding-top: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: hidden !important;
}
.lr-head.lr-head-banner-full{
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  overflow: hidden !important;
}
.lr-head-banner-img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  object-fit: cover !important;
  object-position: center center !important;
}
/* Restaurar padding horizontal en el resto del bloque ruta */
.panel.route-panel.lr:has(.lr-head-banner-full) > :not(.lr-head),
.lr.learn-path:has(.lr-head-banner-full) > :not(.lr-head){
  margin-left: 18px !important;
  margin-right: 18px !important;
}
.panel.route-panel.lr:has(.lr-head-banner-full) > :last-child,
.lr.learn-path:has(.lr-head-banner-full) > :last-child{
  margin-bottom: 4px !important;
}

/* hide-lr-pedagogy-v43 */
 .lr-pedagogy{
  display:none !important;
}

/* lr-media-restore-v57 */
.lr .lr-media{display:block !important; height:118px !important; overflow:hidden !important; border-radius:14px !important; margin:0 0 10px !important;}
.lr .lr-media img{width:100% !important; height:100% !important; object-fit:cover !important; display:block !important;}
.lr .lr-here-pill{display:inline-flex !important;}
.lr .lr-card.station{min-height:auto !important;}
.lr .lr-name, .lr .lr-purpose, .lr .lr-hint{position:relative !important; z-index:1 !important;}
.lr .lr-card.station .work-ico{position:relative !important; z-index:2 !important;}
.lr .lr-num, .lr .lr-node{z-index:3 !important;}
