/* Encuestas OLEE — extiende olee.css (variables, fuentes, botones) */
.enc-body{background:var(--gris);min-height:100vh;display:flex;flex-direction:column}
.aviso-prueba{background:#FFF4DB;color:#5A4100;border-bottom:1px solid #F0D9A4;font-size:.86rem;text-align:center;padding:8px 16px}
.enc-cab{background:#fff;border-bottom:1px solid var(--linea)}
.enc-cab .contenedor{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.enc-cab img{display:block;height:36px;width:auto}
.enc-volver{font-size:.88rem;color:var(--suave);text-decoration:none}
.enc-volver:hover{color:var(--azul);text-decoration:underline}
.enc-main{flex:1;padding:clamp(20px,4vw,48px) 0 64px}
.enc-caja{max-width:760px;margin:0 auto;padding:0 16px}
.enc-tarjeta{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:clamp(22px,4vw,40px);box-shadow:var(--sombra)}
.enc-tarjeta + .enc-tarjeta{margin-top:20px}
.enc-eti{font:600 .74rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--turquesa);margin:0 0 .7rem}
.enc-h1{font-size:clamp(1.75rem,1.2rem + 2.4vw,2.6rem);line-height:1.12;margin-bottom:.7rem}
.enc-sub{font-size:1.12rem;color:var(--tinta);margin:0 0 1rem;font-weight:500}
.enc-tiempo{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:var(--suave);background:var(--gris);border-radius:999px;padding:6px 14px;margin:.4rem 0 1.4rem}
.consent{border:1px solid var(--linea);border-radius:12px;padding:18px 20px;background:#FAFCFD;margin:0 0 1.2rem}
.consent p{font-size:.95rem;line-height:1.6;margin:0 0 .7rem}
.consent p:first-child{font-weight:600;color:var(--tinta)}
.check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:.95rem;line-height:1.5;color:var(--tinta);padding:6px 0}
.check input{width:22px;height:22px;flex:none;margin:1px 0 0;accent-color:var(--turquesa);cursor:pointer}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;transform:none}
.btn-primario[disabled]:hover{background:var(--marino)}
.btn-ancho{width:100%}
/* progreso */
.prog{margin:0 0 18px}
.prog-txt{display:flex;justify-content:space-between;font-size:.86rem;color:var(--suave);margin-bottom:8px}
.prog-txt b{color:var(--tinta);font-weight:600}
.prog-barra{height:6px;background:#DCE3EB;border-radius:99px;overflow:hidden}
.prog-barra span{display:block;height:100%;background:var(--turquesa);border-radius:99px;transition:width .2s}
.paso-h{font-size:1.45rem;margin:0 0 4px}
.paso-h:focus{outline:none}
.paso-nota{font-size:.9rem;color:var(--suave);margin:0 0 6px}
/* preguntas */
.preg{border:0;margin:0;padding:22px 0 0;min-width:0}
.preg + .preg{border-top:1px solid var(--linea);margin-top:22px}
.preg legend{font:600 1.06rem/1.4 var(--sans);color:var(--tinta);padding:0;margin-bottom:4px}
.preg-num{color:var(--turquesa);margin-right:6px}
.preg-ayuda{font-size:.85rem;color:var(--suave);margin:0 0 10px}
.ops{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:10px}
.op{position:relative}
.op input{position:absolute;opacity:0;width:1px;height:1px}
.op label{display:flex;align-items:center;gap:10px;min-height:46px;padding:9px 14px;border:1.5px solid var(--linea);border-radius:10px;background:#fff;cursor:pointer;font-size:.95rem;line-height:1.3;color:var(--tinta);transition:border-color .12s,background-color .12s}
.op label::before{content:"";flex:none;width:18px;height:18px;border:2px solid #A9B6C6;border-radius:50%;background:#fff;transition:all .12s}
.op input[type=checkbox] + label::before{border-radius:5px}
.op label:hover{border-color:var(--azul)}
.op input:checked + label{border-color:var(--turquesa);background:#E8F6F6}
.op input:checked + label::before{border-color:var(--turquesa);background:var(--turquesa);box-shadow:inset 0 0 0 3px #fff}
.op input[type=checkbox]:checked + label::before{box-shadow:none;background:var(--turquesa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.op input:focus-visible + label{outline:3px solid var(--turquesa);outline-offset:2px}
.op input:disabled + label{opacity:.45;cursor:not-allowed}
.preg.con-error .ops .op label{border-color:#E7B4B4}
.error{display:none;color:#B42318;font-size:.88rem;font-weight:500;margin:8px 0 0}
.preg.con-error .error{display:block}
.contador{font-size:.82rem;color:var(--suave);margin:8px 0 0}
.nav{display:flex;gap:12px;justify-content:space-between;margin-top:28px;flex-wrap:wrap}
.nav .btn{min-width:150px}
.nav .btn-sig{margin-left:auto}
.alerta{border-radius:10px;padding:12px 14px;font-size:.92rem;margin-top:16px;background:#FDECEC;color:#8A1C1C;border:1px solid #F3C4C4}
.alerta[hidden]{display:none}
.trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
/* agradecimiento y regalo */
.gracias{text-align:center}
.gracias-ic{width:56px;height:56px;border-radius:50%;background:#E8F6F6;color:var(--turquesa);display:inline-flex;align-items:center;justify-content:center;margin-bottom:12px}
.gracias p{max-width:34em;margin-left:auto;margin-right:auto}
.regalo{border:1.5px dashed #9FD9D7;background:linear-gradient(180deg,#F3FBFB,#fff)}
.regalo h2{font-size:1.4rem;margin-bottom:.3rem}
.regalo-sub{font-weight:600;color:var(--tinta);margin:0 0 .6rem}
.regalo-cond{list-style:none;padding:0;margin:.8rem 0 1rem;display:grid;gap:6px;font-size:.9rem;color:var(--texto)}
.regalo-cond li{padding-left:22px;position:relative}
.regalo-cond li::before{content:"✓";position:absolute;left:0;color:var(--turquesa);font-weight:700}
.campo label{display:block;font-weight:600;font-size:.92rem;color:var(--tinta);margin-bottom:6px}
.campo input{width:100%;min-height:48px;border:1.5px solid var(--linea);border-radius:10px;padding:10px 14px;font:400 1rem var(--sans);color:var(--tinta);background:#fff}
.campo input:focus{outline:none;border-color:var(--turquesa);box-shadow:0 0 0 3px rgba(22,166,163,.18)}
.regalo .check{font-size:.88rem;color:var(--texto);margin:10px 0 2px}
.regalo-acc{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:14px}
.link-sec{background:none;border:0;padding:8px 2px;font:500 .92rem var(--sans);color:var(--suave);text-decoration:underline;cursor:pointer}
.link-sec:hover{color:var(--azul)}
.nota-peq{font-size:.8rem;color:var(--suave);margin:.8rem 0 0;line-height:1.5}
.ok-msg{background:#E8F6F6;border:1px solid #BFE6E5;color:#0C6563;border-radius:10px;padding:12px 14px;font-size:.95rem}
.enc-pie{font-size:.8rem;color:var(--suave);text-align:center;padding:24px 16px}
.enc-pie a{color:var(--suave)}
/* aviso de privacidad */
.aviso-doc h2{font-size:1.25rem;margin:1.8rem 0 .6rem}
.aviso-doc p,.aviso-doc li{font-size:.98rem;line-height:1.7}
.aviso-doc ul{padding-left:1.2rem}
.borrador-legal{background:#FFF4DB;border:1px solid #F0D9A4;color:#5A4100;border-radius:10px;padding:12px 14px;font-size:.9rem;margin-bottom:1.2rem}
@media (max-width:560px){
  .ops{grid-template-columns:1fr}
  .nav .btn{flex:1;min-width:0}
  .enc-volver span{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
