[hidden]{display:none!important}
body.en-entrada{background:var(--night)}
.entrada{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr auto;background:var(--night)}
.entrada-marca{background:var(--night);color:white;padding:clamp(28px,6vw,80px);display:flex;flex-direction:column;justify-content:center}
.entrada-marca .eyebrow{font:500 12px Lexend,sans-serif;letter-spacing:1.4px;color:var(--cyan);margin:0 0 22px}
.entrada-marca h1{font:700 clamp(36px,3.6vw,52px)/1 Montserrat,sans-serif;letter-spacing:-1.5px;margin:0 0 20px}
.entrada-marca .ord{font-size:.5em;vertical-align:super}
.entrada-lema{font:300 19px/1.5 Lexend,sans-serif;margin:0 0 26px;max-width:420px}
.entrada-marca ul{padding-left:20px;margin:0 0 34px;font-size:17px;line-height:1.7}
.entrada-legal{font:300 12px/1.6 Lexend,sans-serif;color:#ccd9ee;margin:auto 0 0}
.entrada-tarjeta{align-self:center;width:calc(100% - 2*clamp(20px,5vw,56px));max-width:480px;margin:clamp(20px,5vw,56px) auto;background:white;border-radius:40px 2px;padding:clamp(24px,4vw,40px);box-sizing:border-box}
.entrada-tarjeta h2:focus{outline:none}
.entrada-tarjeta h2{font:700 26px/1.2 Montserrat,sans-serif;color:var(--night);margin:6px 0 20px}
.entrada-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}
.entrada button{width:auto}
.entrada-tabs button{width:100%;background:transparent;color:var(--night);border:1px solid var(--night);padding:11px 8px}
.entrada-tabs button[aria-selected="true"]{background:var(--night);color:white}
.entrada-aviso{background:#eaf1ff;border-left:4px solid var(--blue);border-radius:2px 12px 12px 2px;padding:12px 14px;font-size:16px;margin:0 0 18px}
.ayuda{font-size:16px;color:#3b4658;margin:0 0 18px}
.campo{margin-bottom:18px}
.campo label{display:block;font:500 14px Lexend,sans-serif;color:var(--night);margin-bottom:6px}
.campo input:not([type="checkbox"]),.campo select{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:13px 14px;border:1px solid #8795ad;border-radius:12px;background:white;color:var(--ink)}
.campo input:focus-visible,.campo select:focus-visible,.entrada button:focus-visible,.entrada summary:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.campo [aria-invalid="true"]{border-color:var(--red);border-width:2px}
.campo-error{color:var(--red);font-size:15px;margin:6px 0 0}
.campo-error::before{content:"✕ "}
.con-boton{display:flex;gap:8px}
.con-boton input{flex:1;min-width:0}
.entrada .ver{background:transparent;color:var(--blue);border:1px solid var(--blue);padding:0 16px;border-radius:12px}
.mayusculas{color:#8a5200;font-size:15px;font-weight:600;margin:6px 0 0}
.reglas{list-style:none;padding:0;margin:12px 0 0;font-size:15px}
.reglas li{padding:2px 0;color:#53627a}
.reglas li.ok{color:var(--green);font-weight:600}
.reglas li span{display:inline-block;width:1.2em}
.fuerza{margin-top:10px}
.fuerza p{font-size:15px;margin:6px 0 0;color:#3b4658}
.fuerza-barra{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.fuerza-barra span{height:6px;border-radius:3px;background:#d3d9e3}
.fuerza[data-nivel="0"] span:nth-child(1){background:var(--red)}
.fuerza[data-nivel="1"] span:nth-child(-n+2){background:#b7791f}
.fuerza[data-nivel="2"] span{background:var(--green)}
.fila{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.consentimiento label{display:flex;gap:10px;font:400 15px/1.5 'Source Sans 3',sans-serif;color:var(--ink);margin:0}
.consentimiento input{margin-top:4px;width:18px;height:18px;flex:none}
.consentimiento details{margin-top:8px;font-size:15px;color:#3b4658}
.consentimiento summary{cursor:pointer;font-weight:600}
.entrada-mensaje{min-height:1.4em;font-size:16px;color:#3b4658;margin:0 0 10px}
.entrada form>button[type="submit"],.entrada-tarjeta>button{width:100%}
.entrada .enlace{background:transparent;color:var(--blue);border:0;padding:12px 0 0;text-decoration:underline;width:100%}
.access-plans.solo{grid-template-columns:minmax(0,1fr);max-width:520px}
.por-sistema{margin-top:22px;padding-top:18px;border-top:1px solid #d3d9e3}
.por-sistema .plan-label{margin:0 0 12px}
.sistemas-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}
.sistemas-tabs button{background:transparent;color:var(--night);border:1px solid var(--night);padding:10px 6px;font-size:13px;line-height:1.25;border-radius:12px;width:100%}
.sistemas-tabs button[aria-selected="true"]{background:var(--night);color:white}
.sistemas-tabs button:focus-visible,.sistema-panel button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.sistema-panel p{font-size:15px;color:#3b4658;margin:0 0 12px}
.sistema-panel button{width:100%}
.sistema-panel button:disabled{opacity:.5;cursor:not-allowed}
.registro-aparte{margin-top:22px;padding-top:18px;border-top:1px solid #d3d9e3;text-align:center}
.registro-aparte p{font-size:15px;color:#3b4658;margin:0 0 10px}
.registro-aparte button{width:100%}
.entrada-invitado{border-top:1px solid #d3d9e3;margin-top:22px;padding-top:20px;text-align:center}
.entrada-invitado button{width:100%}
.entrada-invitado p{font-size:14px;color:#53627a;margin:10px 0 0}
.chip-usuario{font:500 13px Lexend,sans-serif;margin-right:12px}
.header-usuario{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cover-top .header-usuario{color:white}
.historial{background:white;color:var(--ink);border-radius:40px 2px;padding:24px 28px;margin:26px 0 0;max-width:920px}
.historial h2{font:700 20px Montserrat,sans-serif;color:var(--night);margin:0 0 12px}
.historial ul{list-style:none;padding:0;margin:0}
.historial li{display:grid;grid-template-columns:1.6fr .8fr .8fr 1fr;gap:10px;padding:8px 0;border-top:1px solid #e1e6ee;font-size:16px}
.historial time{color:#53627a;text-align:right}
.entrada .google{width:100%;background:white;color:var(--ink);border:1px solid #8795ad;font-weight:600}
.entrada .google:hover{background:#f3f6fb}
.separador{display:flex;align-items:center;gap:12px;color:#53627a;font-size:14px;margin:18px 0}
.separador::before,.separador::after{content:"";flex:1;border-top:1px solid #d3d9e3}
@media(max-width:820px){
.entrada{grid-template-rows:auto 1fr auto}
  .entrada{grid-template-columns:1fr}
  .entrada-marca{padding:28px 24px 34px}
  .entrada-marca ul,.entrada-lema{display:none}
  .entrada-marca h1{font-size:34px;margin-bottom:6px}
  .entrada-marca .eyebrow{margin-bottom:14px}
  .entrada-legal{margin-top:14px}
  .entrada-tarjeta{margin:-18px auto 28px;position:relative}
  .fila{grid-template-columns:1fr}
  .historial li{grid-template-columns:1fr 1fr}
  .historial time{text-align:left}
}
@media(max-width:900px){.cover-bottom p{max-width:40vw}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.entrada-marca h1 .pro{color:var(--cyan)}
.campo.grupo{border:0;padding:0;margin:0 0 18px;min-width:0}
.campo.grupo legend{display:block;font:500 14px Lexend,sans-serif;color:var(--night);margin:0 0 8px;padding:0}
.campo .opcion{display:flex;gap:10px;align-items:flex-start;font:400 17px/1.4 'Source Sans 3',sans-serif;color:var(--ink);margin:0 0 8px}
.campo .opcion input{margin-top:3px;width:20px;height:20px;flex:none}
.campo input[type="date"]{min-height:49px}
.entrada-pie{grid-column:1/-1;background:transparent;text-align:left;padding:6px max(7vw,24px) 28px;font:300 11px/1.6 Lexend,sans-serif;color:#BDCCE4}
.entrada-pie p{margin:0 0 4px}
.entrada-pie a{color:inherit}
@media(min-width:821px){.entrada-marca{position:sticky;top:0;align-self:start;height:100dvh;box-sizing:border-box}}
.plan-datos{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;margin:0 0 22px}
.plan-datos li{background:#EEF3FF;border-radius:16px;padding:12px 10px;text-align:center;display:flex;flex-direction:column;gap:2px;line-height:1.2;font-size:inherit}
.plan-datos b{font:700 26px Montserrat,sans-serif;color:var(--night)}
.plan-datos span{font:300 12px Lexend,sans-serif;color:#3b4658}
@media(min-width:1000px){
  .cover .access-plans{max-width:min(1180px,100%);gap:28px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .cover .access-plan{padding:38px}
  .cover .access-plan .plan-label{font-size:11px;margin-bottom:20px}
  .cover .access-plan .plan-description{font-size:17px}
  .cover .access-plan .plan-note{font-size:12px}
}
.cover-top{justify-content:flex-end}
@media(min-width:1000px){
  .cover{padding-top:22px;padding-bottom:18px}
  .cover-content{padding:8px 0 18px}
  .cover-content>.eyebrow{margin-bottom:10px}
  .cover h1{font-size:clamp(40px,4vw,56px);letter-spacing:-1.8px;margin:0 0 20px}
  .cover .access-plans{margin-top:0}
  .cover .access-plan{padding:28px 32px}
  .cover .access-plan .plan-label{margin-bottom:12px}
  .cover .access-plan .plan-description{margin-bottom:14px}
  .cover .plan-datos{margin-bottom:16px}
  .cover .por-sistema{margin-top:16px;padding-top:14px}
}
@media(min-width:1000px){
  .cover-content{display:flex;flex-direction:column}
  .cover h1{font-size:clamp(42px,3.8vw,60px);margin:0 0 clamp(14px,2.2vh,24px)}
  .cover-content>.eyebrow{font-size:12px;letter-spacing:1.6px;margin-bottom:10px}
  .cover .access-plans{flex:1;align-items:stretch;gap:28px;margin-bottom:8px;max-height:clamp(460px,68vh,640px)}
  .cover .access-plan{padding:clamp(20px,3vh,38px) clamp(28px,3vw,44px);justify-content:space-between}
  .cover .access-plan .plan-label{font-size:12px;letter-spacing:1.6px;margin-bottom:clamp(10px,1.6vh,16px)}
  .cover .access-plan .plan-description{font-size:clamp(16px,1.2vw,19px);line-height:1.45;margin-bottom:clamp(12px,2vh,20px)}
  .cover .plan-datos{gap:12px;margin-bottom:clamp(12px,2.2vh,24px)}
  .cover .plan-datos li{padding:clamp(12px,2.4vh,26px) 10px;border-radius:18px}
  .cover .plan-datos b{font-size:clamp(28px,2.6vw,42px)}
  .cover .plan-datos span{font-size:14px}
  .cover .plan-actions button,.cover .sistema-panel button{font-size:clamp(15px,1.1vw,18px);padding:clamp(12px,1.8vh,17px) 22px}
  .cover .plan-note{font-size:13px;margin-top:clamp(10px,1.6vh,16px)}
  .cover .por-sistema{margin-top:clamp(12px,2.2vh,22px);padding-top:clamp(12px,2vh,20px)}
  .cover .por-sistema .plan-label{margin-bottom:clamp(10px,1.4vh,14px)}
  .cover .sistemas-tabs button{font-size:clamp(13px,1vw,16px);padding:clamp(9px,1.4vh,13px) 10px}
  .cover .sistema-panel p{font-size:clamp(13px,1vw,16px);margin:clamp(10px,1.6vh,14px) 0}
  .cover-help{display:none}
}
@media(min-width:1000px){
  .cover .access-plans{gap:20px}
  .cover .access-plan:first-child{border-radius:40px 2px}
  .cover .access-plan:last-child{border-radius:2px 40px}
}
@media(min-width:1000px){
  #practica{justify-content:flex-start}
  #practica .plan-actions{margin-top:0}
  #practica .por-sistema{flex:1;display:flex;flex-direction:column;margin-top:clamp(18px,3vh,30px);padding-top:clamp(16px,2.6vh,26px)}
  #practica .sistemas-tabs{gap:10px}
  #practica .sistema-panel{flex:1;display:flex;flex-direction:column;justify-content:space-between}
  #practica .sistema-panel p{margin:clamp(14px,2.4vh,24px) 0}
}
@media(min-width:1000px){
  .cover .access-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .cover .access-plan:nth-child(odd){border-radius:40px 2px}
  .cover .access-plan:nth-child(even){border-radius:2px 40px}
  .cover .access-plan{padding:clamp(20px,3vh,34px) clamp(20px,2vw,32px)}
  .cover .plan-datos b{font-size:clamp(24px,2.2vw,36px)}
  .cover .plan-datos span{font-size:13px}
  #practica{justify-content:flex-start}
  #practica .plan-actions{margin-top:auto}
  #sistemas .por-sistema{flex:1;display:flex;flex-direction:column;margin:0;padding:0;border-top:0}
  #sistemas .por-sistema .plan-label{font-size:12px}
}
@media(min-width:1000px){
  #sistemas .sistemas-tabs{display:grid;grid-template-columns:1fr;gap:10px}
  #sistemas .sistemas-tabs button{width:100%;text-align:center}
  #sistemas .sistema-panel{flex:1;display:flex;flex-direction:column;justify-content:space-between}
}
@media(min-width:1000px){
  .cover .access-plan:nth-child(1){border-radius:40px 2px}
  .cover .access-plan:nth-child(2){border-radius:40px}
  .cover .access-plan:nth-child(3){border-radius:2px 40px}
}
@media(min-width:1000px){
  .cover .access-plan:nth-child(1){border-radius:40px 40px 40px 2px}
  .cover .access-plan:nth-child(3){border-radius:40px 40px 2px 40px}
}
.entrada-marca h1.entrada-logo{margin:0 0 20px;font-size:0;letter-spacing:0}
.entrada-logo img{display:block;width:min(300px,80%);height:auto}
@media(max-width:820px){.entrada-logo img{width:min(240px,70%)}}
.entrada-pie{font:400 13px/1.7 Lexend,sans-serif;color:#E6ECF7}
.entrada-pie a{text-decoration:underline;text-underline-offset:2px}
