/* Portada de Opo Portuaria. Solo afecta a la pantalla #login (antes de entrar). */
/* =====================================================================
   LANDING · ¿Quién quiere ser Policía Portuario?
   Plató de TV de noche + cinta policial. Una sola pieza de "boom":
   la escalera del hero que se enciende peldaño a peldaño.
   Tema único oscuro a propósito (es el plató).
   ===================================================================== */
#login{
  --plato:#061230; --plato2:#0c1f4d; --plato3:#13306e; --linea:#24427f;
  --texto:#eef3ff; --texto2:#a8b8de;
  --oro:#ffc233; --oro2:#ff9d00; --azul:#3fb8ff; --ok:#2fd27a; --mal:#ff4d5e;
  --cinta:#ffd21f; --negro:#0a0a0a;
  --f-display:Anton, Impact, "Arial Narrow", sans-serif;
  --f-texto:"Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;
  color-scheme:dark;
}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
/* La portada ocupa todo el ancho (el juego va en una columna de móvil) */
.app:has(#login.on){max-width:none;padding:0}
#login.on{display:block;background:var(--plato);color:var(--texto);font:17px/1.55 var(--f-texto);-webkit-font-smoothing:antialiased}
#login p{margin:0 0 1em}
#login :focus-visible{outline:3px solid var(--oro);outline-offset:3px}
.lp-num{font-family:var(--f-display);letter-spacing:.5px;font-variant-numeric:tabular-nums}
.lp-envoltura{max-width:1120px;margin:0 auto;padding-inline:20px}

/* ---------- Barra superior ---------- */
.lp-barra{position:fixed;inset:0 0 auto;z-index:20;padding-top:env(safe-area-inset-top,0px);transition:background .3s,backdrop-filter .3s}
.lp-barra.lp-solida{background:rgba(6,18,48,.82);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.lp-barra .lp-envoltura{display:flex;align-items:center;justify-content:space-between;height:60px}
.lp-logo{font-family:var(--f-display);font-size:20px;color:var(--oro);text-decoration:none;letter-spacing:.5px}
.lp-logo small{color:var(--azul);font-family:var(--f-texto);font-weight:700;font-size:12px;margin-left:8px;letter-spacing:2px}
.lp-boton-mini{padding:8px 18px;border-radius:30px;border:2px solid var(--oro);color:var(--oro);text-decoration:none;font-weight:700;font-size:15px;transition:background .2s,color .2s}
.lp-boton-mini:hover{background:var(--oro);color:#1b1000}

/* ---------- HERO ---------- */
.lp-hero{position:relative;min-height:100svh;display:grid;place-items:center;text-align:center;padding:100px 0 60px;overflow:hidden;
  background:radial-gradient(90% 60% at 50% 0%, var(--plato3) 0%, var(--plato) 70%)}
.lp-focos{position:absolute;inset:-10% -30% auto;height:95%;pointer-events:none}
.lp-focos i{position:absolute;top:0;width:30%;height:100%;transform-origin:50% 0;clip-path:polygon(46% 0,54% 0,100% 100%,0 100%);
  background:linear-gradient(180deg,rgba(255,194,51,.28),transparent 72%);animation:barrido 8s ease-in-out infinite alternate}
.lp-focos i:nth-child(1){left:10%;--a:-18deg;--b:10deg}
.lp-focos i:nth-child(2){left:35%;background:linear-gradient(180deg,rgba(63,184,255,.25),transparent 72%);animation-duration:10s;--a:12deg;--b:-12deg}
.lp-focos i:nth-child(3){left:60%;animation-duration:7s;--a:16deg;--b:-8deg}
@keyframes barrido{from{transform:rotate(var(--a))}to{transform:rotate(var(--b))}}
.lp-estrellas{position:absolute;inset:0;pointer-events:none;background-image:
  radial-gradient(1.5px 1.5px at 12% 20%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 80% 12%,rgba(255,255,255,.4),transparent),
  radial-gradient(1.5px 1.5px at 66% 38%,rgba(255,255,255,.35),transparent),radial-gradient(1px 1px at 28% 60%,rgba(255,255,255,.3),transparent),
  radial-gradient(1px 1px at 92% 70%,rgba(255,255,255,.35),transparent),radial-gradient(1.5px 1.5px at 6% 82%,rgba(255,255,255,.3),transparent)}
.lp-hero-contenido{position:relative;z-index:1;width:100%}
.lp-sello{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:30px;border:2px solid var(--azul);color:var(--azul);font-weight:700;font-size:14px;letter-spacing:1px;transform:rotate(-2deg)}
.lp-sello .lp-punto{width:8px;height:8px;border-radius:50%;background:var(--mal);box-shadow:0 0 10px var(--mal);animation:latido 1.2s infinite}
@keyframes latido{50%{opacity:.25}}
.lp-hero h1{font-family:var(--f-display);font-weight:400;font-size:clamp(46px,10.5vw,124px);line-height:.92;margin:22px auto 0;max-width:13ch;color:var(--oro);
  text-shadow:0 0 50px rgba(255,194,51,.35),0 6px 0 rgba(0,0,0,.25);text-wrap:balance}
.lp-hero h1 .lp-pal{display:inline-block;animation:cae .7s cubic-bezier(.2,1.4,.4,1) backwards}
@keyframes cae{from{opacity:0;transform:translateY(-60px) rotate(-6deg) scale(1.2)}}
.lp-lema{max-width:560px;margin:22px auto 0;color:var(--texto2);font-size:clamp(17px,4.2vw,20px);text-wrap:balance}

/* La escalera del hero: el momento de la página */
.lp-plato-escalera{margin:34px auto 0;width:min(100%,640px)}
.lp-marcador{display:flex;align-items:baseline;justify-content:center;gap:10px;margin-bottom:12px}
.lp-marcador .lp-num{font-size:clamp(40px,9vw,64px);color:var(--texto);line-height:1;min-width:6ch;text-align:right}
.lp-marcador small{color:var(--texto2);font-weight:700;letter-spacing:2px}
.lp-marcador.lp-cima .lp-num{color:var(--oro);text-shadow:0 0 30px rgba(255,194,51,.6)}
.lp-peldanos{display:flex;align-items:flex-end;gap:5px;height:150px}
.lp-peldanos i{flex:1;border-radius:5px 5px 2px 2px;background:rgba(255,255,255,.07);transition:background .2s,box-shadow .2s,transform .2s}
.lp-peldanos i.lp-seg{box-shadow:inset 0 0 0 2px var(--azul)}
.lp-peldanos i.lp-luz{background:linear-gradient(180deg,var(--oro),var(--oro2));box-shadow:0 0 16px rgba(255,194,51,.55);transform:translateY(-3px)}
.lp-peldanos i.lp-seg.lp-luz{background:linear-gradient(180deg,#8fdcff,var(--azul));box-shadow:0 0 24px rgba(63,184,255,.8)}
.lp-peldanos.lp-cima i{animation:destello .45s 3}
@keyframes destello{50%{filter:brightness(1.8)}}
.lp-leyenda-escalera{display:flex;justify-content:space-between;font-size:13px;color:var(--texto2);margin-top:8px}

.lp-ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:34px}
.lp-boton{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:18px 34px;border-radius:16px;font-weight:700;font-size:19px;text-decoration:none;border:0;cursor:pointer;transition:transform .15s,box-shadow .2s}
.lp-boton:active{transform:translateY(2px)}
.lp-boton.lp-oro{color:#1b1000;background:linear-gradient(180deg,var(--oro),var(--oro2));box-shadow:0 10px 40px rgba(255,157,0,.4)}
.lp-boton.lp-oro:hover{box-shadow:0 14px 50px rgba(255,157,0,.6);transform:translateY(-2px)}
.lp-boton.lp-borde{color:var(--texto);border:2px solid var(--linea);background:rgba(255,255,255,.03)}
.lp-boton.lp-borde:hover{border-color:var(--azul)}
.lp-flecha-baja{display:block;margin:40px auto 0;width:28px;height:44px;border:2px solid var(--texto2);border-radius:20px;position:relative;opacity:.6}
.lp-flecha-baja::after{content:"";position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--texto2);animation:rueda 1.6s infinite}
@keyframes rueda{to{transform:translateY(14px);opacity:0}}

/* ---------- Cinta policial ---------- */
.lp-marco-cinta{position:relative;z-index:2;overflow:hidden;padding-block:26px}
.lp-marco-cinta.lp-sube-cinta{margin-top:-52px}
.lp-cinta{margin:0 -5%;transform:rotate(-2.2deg);background:var(--cinta);color:var(--negro);overflow:hidden;
  border-block:4px solid var(--negro);box-shadow:0 12px 30px rgba(0,0,0,.35)}
.lp-cinta.lp-dos{transform:rotate(1.6deg)}
.lp-cinta-pista{display:flex;width:max-content;animation:desliza 28s linear infinite}
.lp-cinta.lp-dos .lp-cinta-pista{animation-direction:reverse;animation-duration:34s}
.lp-cinta span{font-family:var(--f-display);font-size:22px;letter-spacing:2px;padding:10px 0;white-space:nowrap}
.lp-cinta span::after{content:"◆";margin:0 22px;font-size:14px;vertical-align:3px}
@keyframes desliza{to{transform:translateX(-50%)}}

/* ---------- Secciones ---------- */
.lp-seccion{padding-block:96px}
.lp-etiqueta{margin:0;color:var(--azul);font-weight:700;font-size:13px;letter-spacing:3px;text-transform:uppercase}
.lp-titulo{color:var(--texto);font-family:var(--f-display);font-weight:400;font-size:clamp(38px,7vw,72px);line-height:.98;margin:8px 0 14px;text-wrap:balance}
.lp-titulo em{font-style:normal;color:var(--oro)}
.lp-intro{max-width:60ch;color:var(--texto2);margin:0 0 30px}

/* Aparición al hacer scroll (sin JS; si el navegador no lo soporta, se ve todo quieto) */
@supports (animation-timeline:view()){
  .lp-aparece{animation:sube linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  @keyframes sube{from{opacity:.15;transform:translateY(60px) scale(.97)}}
}

/* ---------- Demo de pregunta ---------- */
.lp-demo{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.lp-movil{justify-self:center;width:min(100%,380px);border-radius:38px;padding:14px;background:#02081a;border:2px solid var(--linea);
  box-shadow:0 30px 80px rgba(0,0,0,.5),0 0 0 6px rgba(255,255,255,.02)}
.lp-pantalla{border-radius:28px;padding:18px 14px;background:radial-gradient(120% 70% at 50% -10%,var(--plato3),var(--plato) 70%);min-height:520px;display:flex;flex-direction:column}
.lp-hud{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--texto2)}
.lp-hud b{font-family:var(--f-display);font-size:24px;color:var(--oro);font-weight:400}
.lp-mini-escalera{display:flex;gap:3px;margin:10px 0 14px}
.lp-mini-escalera i{flex:1;height:7px;border-radius:2px;background:rgba(255,255,255,.1)}
.lp-mini-escalera i.lp-hecho{background:var(--oro)} .lp-mini-escalera i.lp-ahora{background:#fff;animation:latido 1s infinite}
.lp-mini-escalera i:nth-child(10){box-shadow:inset 0 0 0 1.5px var(--azul)}
.lp-enunciado{font-weight:700;font-size:19px;line-height:1.4;padding:16px;border-radius:16px;border:1px solid var(--linea);background:rgba(255,255,255,.04);margin-bottom:auto}
.lp-enunciado small{display:block;font-weight:400;color:var(--azul);font-size:12px;margin-bottom:6px}
.lp-enunciado.lp-tension{animation:tension .9s}
@keyframes tension{30%,70%{border-color:var(--oro2);box-shadow:0 0 30px rgba(255,157,0,.3)}}
.lp-opciones{display:grid;gap:8px;margin-top:14px}
.lp-opcion{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:10px 20px;border:2px solid #3a62b8;background:#10275c;font-weight:700;font-size:17px;text-align:left;cursor:pointer;
  clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,12px 100%,0 50%);transition:background .15s,transform .15s}
.lp-opcion:hover:not(:disabled){background:#173a82;transform:scale(1.02)}
.lp-opcion b{color:var(--oro);font-family:var(--f-display);font-weight:400;font-size:19px}
.lp-opcion:disabled{cursor:default}
.lp-opcion.lp-elegida{background:#c98400;border-color:var(--oro);color:#1b1000;animation:parpadeo .3s 3}
.lp-opcion.lp-elegida b,.lp-opcion.lp-ok b,.lp-opcion.lp-mal b{color:inherit}
@keyframes parpadeo{50%{filter:brightness(1.5)}}
.lp-opcion.lp-ok{background:var(--ok);border-color:var(--ok);color:#03200f}
.lp-opcion.lp-mal{background:var(--mal);border-color:var(--mal);color:#2a0006;animation:temblor .4s}
@keyframes temblor{20%,60%{transform:translateX(-7px)}40%,80%{transform:translateX(7px)}}
.lp-veredicto{min-height:52px;margin-top:12px;text-align:center}
.lp-veredicto b{display:block;font-family:var(--f-display);font-weight:400;font-size:28px;line-height:1}
.lp-veredicto.lp-ok b{color:var(--ok)} .lp-veredicto.lp-mal b{color:var(--mal)}
.lp-veredicto small{color:var(--texto2);font-size:13px}
.lp-otra{margin-top:8px;background:none;border:0;color:var(--azul);text-decoration:underline;cursor:pointer;font-size:14px}
.lp-demo-texto p{color:var(--texto2);max-width:44ch}
.lp-demo-texto ul{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.lp-demo-texto li{display:flex;gap:12px;align-items:flex-start}
.lp-demo-texto li span{font-size:22px;line-height:1.2}

/* ---------- Reglas ---------- */
.lp-reglas{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.lp-regla{position:relative;padding:24px 20px;border-radius:20px;border:1px solid var(--linea);background:var(--plato2);overflow:hidden;transition:transform .25s,border-color .25s}
.lp-regla:hover{transform:translateY(-6px) rotate(-.6deg);border-color:var(--oro)}
.lp-regla::before{content:"";position:absolute;inset:0;background:radial-gradient(240px circle at var(--mx,50%) var(--my,0%),rgba(255,194,51,.16),transparent 60%);opacity:0;transition:opacity .25s}
.lp-regla:hover::before{opacity:1}
.lp-regla .lp-ic{font-size:40px;display:block;transition:transform .35s cubic-bezier(.2,1.6,.4,1)}
.lp-regla:hover .lp-ic{transform:scale(1.25) rotate(-8deg)}
.lp-regla b{display:block;font-size:19px;margin:12px 0 6px}
.lp-regla p{margin:0;color:var(--texto2);font-size:15px}

/* ---------- Ligas: evolución ---------- */
.lp-ligas{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:center}
.lp-acuario{position:relative;aspect-ratio:1;max-width:420px;width:100%;justify-self:center;border-radius:50%;
  background:radial-gradient(circle at 50% 40%,rgba(63,184,255,.25),rgba(6,18,48,0) 65%),radial-gradient(circle,var(--plato2),var(--plato) 70%);
  border:2px solid var(--linea);display:grid;place-items:center;overflow:hidden}
.lp-acuario::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 60px rgba(63,184,255,.25)}
.lp-burbujas i{position:absolute;bottom:-20px;width:10px;height:10px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);animation:burbuja 6s linear infinite}
.lp-burbujas i:nth-child(1){left:20%} .lp-burbujas i:nth-child(2){left:45%;animation-delay:2s;width:6px;height:6px}
.lp-burbujas i:nth-child(3){left:70%;animation-delay:4s} .lp-burbujas i:nth-child(4){left:82%;animation-delay:1s;width:7px;height:7px}
@keyframes burbuja{to{transform:translateY(-460px) translateX(14px);opacity:0}}
.lp-bicho{font-size:clamp(100px,20vw,150px);line-height:1;margin-top:-8%;filter:drop-shadow(0 12px 30px rgba(0,0,0,.5));animation:flota 3.5s ease-in-out infinite}
.lp-bicho.lp-evoluciona{animation:evoluciona .9s ease-out}
@keyframes flota{50%{transform:translateY(-12px) rotate(3deg)}}
@keyframes evoluciona{0%{transform:scale(1);filter:brightness(1)}40%{transform:scale(.2);filter:brightness(6) blur(4px)}60%{transform:scale(1.3);filter:brightness(4)}100%{transform:scale(1);filter:brightness(1)}}
.lp-nombre-bicho{position:absolute;bottom:9%;margin:0;font-family:var(--f-display);font-size:28px;letter-spacing:1px}
.lp-aviso-evo{position:absolute;top:14%;font-weight:700;color:var(--oro);font-size:15px;opacity:0;transition:opacity .3s}
.lp-aviso-evo.lp-on{opacity:1}
.lp-ruta-ligas{list-style:none;padding:0;margin:0;display:grid;gap:8px;counter-reset:liga}
.lp-ruta-ligas li{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:14px;border:1px solid var(--linea);background:var(--plato2);cursor:pointer;transition:border-color .2s,transform .2s,background .2s}
.lp-ruta-ligas li:hover{transform:translateX(6px)}
.lp-ruta-ligas li.lp-on{border-color:var(--oro);background:linear-gradient(90deg,rgba(255,194,51,.16),var(--plato2))}
.lp-ruta-ligas li span{font-size:28px}
.lp-ruta-ligas li b{flex:1}
.lp-ruta-ligas li small{color:var(--texto2)}
.lp-ruta-ligas li::before{counter-increment:liga;content:counter(liga);font-family:var(--f-display);color:var(--texto2);width:18px}
.lp-nota-ligas{margin-top:16px;color:var(--texto2);font-size:15px}

/* ---------- Rangos en escalera ---------- */
.lp-rangos{list-style:none;padding:0;margin:0;display:grid;gap:7px;--paso:34px}
.lp-rangos li{width:fit-content;max-width:calc(100% - var(--k,0) * var(--paso));margin-left:calc(var(--k,0) * var(--paso));display:flex;align-items:center;gap:12px;
  padding:10px 18px;border-radius:12px;border:1px solid var(--linea);background:var(--plato2);font-weight:700;transition:transform .2s,border-color .2s}
.lp-rangos li:hover{transform:translateX(8px);border-color:var(--azul)}
.lp-rangos li span{font-size:20px}
.lp-rangos li:first-child{border-color:var(--oro);color:var(--oro);box-shadow:0 0 30px rgba(255,194,51,.22)}
/* El de abajo (Aspirante) no se mueve; cada peldaño hacia arriba, un paso más a la derecha. Vale hasta 12 rangos. */
.lp-rangos li:nth-last-child(2){--k:1}.lp-rangos li:nth-last-child(3){--k:2}.lp-rangos li:nth-last-child(4){--k:3}
.lp-rangos li:nth-last-child(5){--k:4}.lp-rangos li:nth-last-child(6){--k:5}.lp-rangos li:nth-last-child(7){--k:6}
.lp-rangos li:nth-last-child(8){--k:7}.lp-rangos li:nth-last-child(9){--k:8}.lp-rangos li:nth-last-child(10){--k:9}
.lp-rangos li:nth-last-child(11){--k:10}.lp-rangos li:nth-last-child(12){--k:11}
.lp-reto{margin-top:36px;display:flex;gap:18px;align-items:center;padding:20px 24px;border-radius:20px;border:2px dashed var(--azul);background:rgba(63,184,255,.06)}
.lp-reto .lp-ic{font-size:44px}
.lp-reto b{font-size:20px}
.lp-reto p{margin:4px 0 0;color:var(--texto2)}

/* ---------- Logros: dos carruseles ---------- */
.lp-carril{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.lp-carril + .lp-carril{margin-top:12px}
.lp-pista{display:flex;gap:12px;width:max-content;animation:desliza 50s linear infinite}
.lp-carril:nth-of-type(2) .lp-pista{animation-direction:reverse;animation-duration:60s}
.lp-carril:hover .lp-pista{animation-play-state:paused}
.lp-logro{display:flex;align-items:center;gap:12px;padding:12px 18px 12px 14px;border-radius:16px;border:1px solid var(--linea);background:var(--plato2);white-space:nowrap}
.lp-logro span{font-size:30px}
.lp-logro b{display:block}
.lp-logro small{color:var(--texto2);font-size:13px}
.lp-logro.lp-secreto{border-style:dashed}
.lp-logro.lp-secreto span{filter:grayscale(1) brightness(.6)}

/* ---------- Temario ---------- */
.lp-normas{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:12px}
.lp-normas li{display:flex;align-items:center;gap:10px;padding:14px 22px;border-radius:40px;border:1px solid var(--linea);background:var(--plato2);font-weight:700;font-size:18px;transition:transform .2s,border-color .2s,background .2s}
.lp-normas li:hover{transform:translateY(-4px) scale(1.04);border-color:var(--oro);background:var(--plato3)}
.lp-normas li span{font-size:24px}
.lp-chiste{margin-top:22px;color:var(--texto2);font-size:14px;font-style:italic}

/* ---------- Entrar ---------- */
.lp-final{position:relative;text-align:center;overflow:hidden;background:radial-gradient(70% 70% at 50% 100%,var(--plato3),var(--plato) 75%)}
.lp-final .lp-titulo{font-size:clamp(48px,10vw,110px);color:var(--oro)}
.lp-acceso{max-width:420px;margin:30px auto 0;display:grid;gap:12px;text-align:left;padding:24px;border-radius:24px;border:1px solid var(--linea);background:rgba(12,31,77,.75);backdrop-filter:blur(6px)}
.lp-acceso label{display:grid;gap:6px;font-size:14px;color:var(--texto2)}
.lp-acceso input:not([type=checkbox]){padding:14px;border-radius:12px;border:2px solid #3a62b8;background:#0b1d48;font-size:17px}
.lp-acceso input:focus{border-color:var(--oro);outline:none}
.lp-acceso .lp-check{display:flex;align-items:center;gap:8px}
.lp-acceso .lp-check input{width:20px;height:20px;accent-color:var(--oro)}
.lp-acceso .lp-boton{width:100%}
.lp-acceso .lp-nota{text-align:center;color:var(--texto2);font-size:14px;margin:0}
.lp-pie{padding:30px 0 40px;text-align:center;color:var(--texto2);font-size:14px;border-top:1px solid rgba(255,255,255,.06)}

#lp-confeti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:30}
#aviso{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,140%);z-index:31;padding:12px 22px;border-radius:30px;
  background:var(--plato2);border:2px solid var(--oro);color:var(--oro);font-weight:700;transition:transform .3s,visibility 0s .3s;visibility:hidden;max-width:90vw;text-align:center}
#aviso.lp-on{transform:translate(-50%,0);visibility:visible;transition:transform .3s}

@media (max-width:900px){
  .lp-demo,.lp-ligas{grid-template-columns:1fr}
  .lp-reglas{grid-template-columns:1fr 1fr}
  .lp-rangos{--paso:14px}
  .lp-seccion{padding-block:72px}
}
@media (max-width:520px){
  .lp-reglas{grid-template-columns:1fr}
  .lp-peldanos{height:110px;gap:3px}
  .lp-logo small{display:none}
  .lp-reto{flex-direction:column;text-align:center}
}
@media (prefers-reduced-motion:reduce){#login *,#login *::before,#login *::after{animation:none!important;transition:none!important}}

/* Mensajes del formulario de entrada */
.lp-error{color:var(--mal);font-weight:700;margin:0}
.lp-enlace{background:none;border:0;color:var(--texto2);text-decoration:underline;cursor:pointer;font-size:14px}
