/* Test electoral 29-N · Capitol (18/10/2026). Marca de la sala de encuestas: tinta #111, crema #F5F3EE, amarillo #FFE14D. */
.ctest{--tinta:#111;--crema:#F5F3EE;--crema2:#ECEAE6;--gris:#5a5a5a;--linea:#E3E3E3;--ama:#FFE14D;--verde:#0B7A3B;--rojo:#C62828;
  font-family:Archivo,system-ui,sans-serif;color:var(--tinta);max-width:1120px;margin:8px auto 56px;-webkit-font-smoothing:antialiased}
.ctest *{box-sizing:border-box}
.ctest button{font-family:inherit;cursor:pointer}
.ctest a{color:var(--tinta)}
.ctest .ct-oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* El tema fuerza tamaños y colores en los <p> del contenido */
.content-right .ctest p,.ctest p{font-family:Newsreader,Georgia,serif!important;font-size:18px!important;line-height:1.55!important;color:#2b2b2b!important;margin:0 0 12px!important}
.content-right .ctest p.ct-kicker,.ctest p.ct-kicker,.content-right .ctest p.ct-lab,.ctest p.ct-lab{font-family:"IBM Plex Mono",ui-monospace,monospace!important;font-size:12px!important;line-height:1.4!important;letter-spacing:.12em;text-transform:uppercase;color:#555!important;margin:0 0 10px!important}
.ct-kicker::before,.ct-lab.ct-raya::before{content:"";display:inline-block;width:18px;height:3px;background:var(--ama);vertical-align:middle;margin-right:8px}

/* ---------- Portada ---------- */
.ct-hero{position:relative;background:var(--crema);background-image:radial-gradient(rgba(17,17,17,.07) 1px,transparent 1px);background-size:18px 18px;border-radius:18px;padding:clamp(22px,5vw,56px);overflow:hidden}
.ct-h1{font-family:Archivo,sans-serif;font-weight:850;letter-spacing:-.04em;line-height:1.02;font-size:clamp(34px,6.2vw,66px);margin:0 0 16px;color:var(--tinta)}
.ct-hl{background:linear-gradient(transparent 60%,var(--ama) 60%,var(--ama) 92%,transparent 92%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 4px}
.content-right .ctest p.ct-dek,.ctest p.ct-dek{font-size:clamp(18px,2.1vw,21px)!important;max-width:62ch}
.ct-pilares{list-style:none;margin:22px 0 0!important;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media(max-width:760px){.ct-pilares{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ct-pilares li{background:#fff;border-radius:12px;padding:12px 14px;margin:0!important}
.ct-pilares b{display:block;font-weight:850;font-size:clamp(20px,2.6vw,28px);letter-spacing:-.02em;line-height:1.1}
.ct-pilares span{display:block;font-size:13px;color:#555;line-height:1.35;margin-top:2px}
.ct-arranque{margin-top:24px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px;align-items:end}
@media(max-width:760px){.ct-arranque{grid-template-columns:minmax(0,1fr)}}
.ct-campo label{display:block;font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#444;margin-bottom:6px}
.ct-campo select{width:100%;font-family:Archivo,sans-serif;font-size:17px;font-weight:650;color:var(--tinta);background:#fff;border:2px solid var(--tinta);border-radius:12px;padding:13px 14px;appearance:auto}
.ct-modos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ct-modo{border:2px solid var(--tinta);background:#fff;border-radius:12px;padding:10px 12px;text-align:left;color:var(--tinta)}
.ct-modo b{display:block;font-size:16px;font-weight:800}
.ct-modo span{display:block;font-size:13px;color:#555}
.ct-modo[aria-pressed="true"]{background:var(--tinta);color:#fff}
.ct-modo[aria-pressed="true"] span{color:#d6d6d6}
.ct-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:850;font-size:18px;letter-spacing:-.01em;background:var(--tinta);color:#fff;border:0;border-radius:999px;padding:16px 28px;text-decoration:none;transition:transform .12s,background .12s}
.ct-btn:hover,.ct-btn:focus-visible{background:var(--ama);color:var(--tinta)}
.ct-btn:active{transform:scale(.98)}
.ct-btn.ct-btn-sec{background:#fff;color:var(--tinta);box-shadow:inset 0 0 0 2px var(--tinta)}
.ct-btn.ct-btn-sec:hover{background:var(--ama)}
.ct-empezar{margin-top:18px;width:100%;font-size:20px;padding:18px}
.ct-nota-priv{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#555;margin-top:12px;letter-spacing:.02em}
.ct-compartido{margin:0 0 16px;background:var(--tinta);color:#fff;border-radius:14px;padding:14px 16px;display:flex;gap:14px;align-items:center}
.ct-compartido .ct-ins{flex:none}
.ct-compartido div{font-size:16px;line-height:1.35}
.ct-compartido b{color:var(--ama)}
.ct-reto{margin:0 0 16px;background:var(--ama);border-radius:14px;padding:14px 16px;font-size:16px;line-height:1.4;font-weight:600}

/* ---------- Insignias de partido ---------- */
.ct-ins{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1px var(--linea);overflow:hidden;flex:none;width:44px;height:44px}
.ct-ins img{max-width:80%;max-height:70%;display:block}
.ct-ins i{font-style:normal;font-weight:850;color:#fff;font-size:12px;letter-spacing:-.01em;width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1}
.ct-ins.ct-g{width:72px;height:72px;border-radius:16px}
.ct-ins.ct-g i{font-size:18px}
.ct-ins.ct-p{width:30px;height:30px;border-radius:7px}
.ct-ins.ct-p i{font-size:9px}

/* ---------- Pregunta ---------- */
.ct-juego{max-width:820px;margin:0 auto}
.ctest{scroll-margin-top:calc(var(--ct-top,0px) + 10px)}
.ct-barra{position:sticky;top:var(--ct-top,0px);z-index:5;background:#fff;padding:10px 0 12px;display:flex;align-items:center;gap:12px}
.ct-volver{border:0;background:transparent;font-weight:700;font-size:15px;padding:8px 4px;color:var(--tinta)}
.ct-volver:disabled{opacity:.3;cursor:default}
.ct-prog{flex:1;height:10px;background:var(--crema2);border-radius:99px;overflow:hidden}
.ct-prog i{display:block;height:100%;background:var(--tinta);border-radius:99px;transition:width .35s cubic-bezier(.2,.8,.2,1)}
.ct-cuenta{font-family:"IBM Plex Mono",monospace;font-weight:700;font-size:14px;min-width:54px;text-align:right}
.ct-tarjeta{background:var(--crema);border-radius:20px;padding:clamp(22px,4.5vw,48px);margin-top:6px;animation:ct-entra .32s cubic-bezier(.2,.8,.2,1)}
@keyframes ct-entra{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.ct-tema{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--tinta);color:#fff;border-radius:6px;padding:5px 10px;margin-bottom:16px}
.ct-afirmacion{font-family:Archivo,sans-serif;font-weight:800;font-size:clamp(25px,4.2vw,40px);line-height:1.12;letter-spacing:-.03em;margin:0 0 14px;color:var(--tinta)}
.ct-contexto{border:0;background:transparent;padding:0;font-family:"IBM Plex Mono",monospace;font-size:13px;font-weight:600;color:#333;text-decoration:underline;text-decoration-color:var(--ama);text-decoration-thickness:3px;text-underline-offset:3px}
.content-right .ctest p.ct-ctx-t,.ctest p.ct-ctx-t{font-size:16px!important;background:#fff;border-radius:12px;padding:12px 14px;margin:10px 0 0!important}
.ct-opciones{display:grid;gap:8px;margin-top:22px}
.ct-op{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:#fff;border:2px solid transparent;border-radius:14px;padding:14px 16px;font-size:18px;font-weight:700;color:var(--tinta);box-shadow:0 1px 0 rgba(17,17,17,.06);transition:border-color .12s,transform .08s,background .12s}
@media(hover:hover){.ct-op:hover{border-color:var(--tinta)}}@media(hover:none){.ct-op .ct-k{display:none}}
.ct-op:active{transform:scale(.99)}
.ct-op .ct-k{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#777;margin-left:auto}
.ct-op .ct-dot{width:22px;height:22px;border-radius:50%;flex:none;border:2px solid var(--tinta);display:flex;align-items:center;justify-content:center}
.ct-op[aria-pressed="true"]{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.ct-op[aria-pressed="true"] .ct-dot{background:var(--ama);border-color:var(--ama)}
.ct-op[aria-pressed="true"] .ct-k{color:#bbb}
.ct-op.ct-a2 .ct-dot{background:linear-gradient(#0B7A3B,#0B7A3B) center/10px 10px no-repeat}
.ct-op.ct-a1 .ct-dot{background:linear-gradient(#0B7A3B,#0B7A3B) center/6px 6px no-repeat}
.ct-op.ct-d1 .ct-dot{background:linear-gradient(#C62828,#C62828) center/6px 6px no-repeat}
.ct-op.ct-d2 .ct-dot{background:linear-gradient(#C62828,#C62828) center/10px 10px no-repeat}
.ct-pie-preg{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;margin-top:16px}
.ct-importa{display:inline-flex;align-items:center;gap:8px;border:2px dashed #999;background:transparent;border-radius:999px;padding:9px 16px;font-size:15px;font-weight:700;color:var(--tinta)}
.ct-importa[aria-pressed="true"]{border-style:solid;border-color:var(--tinta);background:var(--ama)}
.ct-saltar{border:0;background:transparent;font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:#444;padding:9px 4px}
.ct-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(20px);opacity:0;z-index:99999;background:#111;color:#fff;font-family:Archivo,system-ui,sans-serif;border-radius:14px;padding:12px 18px;font-weight:700;font-size:15px;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:opacity .25s,transform .25s;max-width:calc(100vw - 32px);text-align:center}
.ct-toast.ct-on{opacity:1;transform:translateX(-50%) translateY(0)}
.ct-toast b{color:#FFE14D}

/* ---------- Predicción ---------- */
.ct-pred h2,.ct-res h2,.ct-sec h2{font-family:Archivo,sans-serif;font-weight:850;letter-spacing:-.03em;line-height:1.1;font-size:clamp(25px,3.4vw,36px);margin:0 0 10px;color:var(--tinta)}
.ct-pred-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:16px 0}
.ct-pred-op{display:flex;align-items:center;gap:10px;background:#fff;border:2px solid var(--linea);border-radius:14px;padding:10px;font-weight:750;font-size:15px;text-align:left;color:var(--tinta);line-height:1.15}
.ct-pred-op:hover,.ct-pred-op:focus-visible{border-color:var(--tinta)}

/* ---------- Resultado ---------- */
.ct-res{animation:ct-entra .4s cubic-bezier(.2,.8,.2,1)}
.ct-gana{position:relative;background:var(--tinta);color:#fff;border-radius:22px;padding:clamp(22px,4.5vw,44px);overflow:hidden}
.ct-gana::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:var(--c,#FFE14D);opacity:.22}
.content-right .ctest .ct-gana p.ct-lab,.ctest .ct-gana p.ct-lab{color:#cfcfcf!important}
.ct-gana-fila{display:flex;align-items:center;gap:18px;position:relative;z-index:1}
.ct-gana .ct-ins{box-shadow:none}
.ct-gana-n{font-weight:850;font-size:clamp(30px,5.4vw,56px);letter-spacing:-.04em;line-height:1}
.ct-gana-pct{font-family:"IBM Plex Mono",monospace;font-weight:700;font-size:clamp(46px,8vw,92px);line-height:1;color:var(--ama);margin-left:auto;letter-spacing:-.04em}
.ct-gana-pct small{font-size:.4em}
.content-right .ctest .ct-gana p.ct-gana-t,.ctest .ct-gana p.ct-gana-t{color:#f1f1f1!important;font-size:17px!important;margin:16px 0 0!important;position:relative;z-index:1}
.ct-perfil{display:inline-block;margin-top:14px;background:var(--ama);color:var(--tinta);font-weight:850;font-size:15px;border-radius:999px;padding:7px 14px;position:relative;z-index:1}
.ct-veredicto{margin-top:12px;background:var(--crema);border-radius:14px;padding:14px 16px;font-weight:650;font-size:16px;line-height:1.4}
.ct-veredicto b{font-weight:850}
.ct-acciones{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.ct-acciones .ct-btn{font-size:16px;padding:13px 20px}
.ct-red{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;border:2px solid var(--tinta);background:#fff;color:var(--tinta);font-weight:850;font-size:14px;text-decoration:none}
.ct-red:hover,.ct-red:focus-visible{background:var(--ama)}
.ct-red svg{width:22px;height:22px}
.ct-redes{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ct-sec{margin-top:40px;border-top:3px solid var(--tinta);padding-top:14px}
.content-right .ctest p.ct-sub,.ctest p.ct-sub{color:#444!important;font-size:17px!important;max-width:68ch}
.ct-rank{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.ct-rank li{display:grid;grid-template-columns:28px 44px minmax(0,1fr) 64px;gap:12px;align-items:center;margin:0}
.ct-rank .ct-pos{font-family:"IBM Plex Mono",monospace;font-weight:700;font-size:14px;color:#777;text-align:right}
.ct-rank .ct-nm{font-weight:800;font-size:16px;line-height:1.15}
.ct-rank .ct-nm small{display:block;font-weight:500;font-size:12px;color:#666}
.ct-rank .ct-tr{height:12px;background:var(--crema2);border-radius:99px;overflow:hidden;margin-top:6px}
.ct-rank .ct-tr i{display:block;height:100%;border-radius:99px;width:0;transition:width .9s cubic-bezier(.2,.8,.2,1)}
.ct-rank .ct-pc{font-family:"IBM Plex Mono",monospace;font-weight:700;font-size:20px;text-align:right}
.ct-rank li.ct-fuera{opacity:.55}
.ct-ver-todos{margin-top:12px;border:0;background:transparent;font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:3px;padding:6px 0;color:var(--tinta)}

/* Brújula */
.ct-brujula{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:start}
@media(max-width:820px){.ct-brujula{grid-template-columns:minmax(0,1fr)}}
.ct-plano{position:relative;background:var(--crema);border-radius:18px;padding:12px}
.ct-plano svg{display:block;width:100%;height:auto}
.ct-ejes{display:inline-flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}
.ct-ejes button{border:2px solid var(--tinta);background:#fff;border-radius:999px;padding:6px 14px;font-weight:700;font-size:14px;color:var(--tinta)}
.ct-ejes button[aria-pressed="true"]{background:var(--tinta);color:#fff}
.ct-leyenda-brujula{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ct-leyenda-brujula li{display:flex;gap:10px;align-items:center;font-size:15px;margin:0}
.ct-leyenda-brujula i{width:12px;height:12px;border-radius:50%;flex:none}

/* Temas: dónde coincides y dónde chocas */
.ct-temas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
@media(max-width:700px){.ct-temas{grid-template-columns:minmax(0,1fr)}}
.ct-caja{background:#fff;border:1px solid var(--linea);border-radius:14px;padding:14px 16px}
.ct-caja h3{font-family:Archivo,sans-serif;font-weight:850;font-size:18px;margin:0 0 8px;color:var(--tinta)}
.ct-caja ul{margin:0;padding:0;list-style:none}
.ct-caja li{font-size:15px;line-height:1.35;padding:7px 0;border-top:1px solid #efefef;margin:0}
.ct-caja li:first-child{border-top:0}

/* Pregunta a pregunta */
.ct-filtro-partidos{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.ct-filtro-partidos button{display:inline-flex;align-items:center;gap:6px;border:2px solid var(--linea);background:#fff;border-radius:999px;padding:4px 10px 4px 4px;font-weight:700;font-size:13px;color:var(--tinta)}
.ct-filtro-partidos button[aria-pressed="true"]{border-color:var(--tinta);background:var(--ama)}
.ct-detalle{display:grid;gap:8px}
.ct-detalle details{background:#fff;border:1px solid var(--linea);border-radius:14px}
.ct-detalle summary{list-style:none;cursor:pointer;padding:14px 44px 14px 16px;position:relative;font-weight:750;font-size:16px;line-height:1.3}
.ct-detalle summary::-webkit-details-marker{display:none}
.ct-detalle summary::after{content:"+";position:absolute;right:16px;top:12px;font-size:22px;font-weight:400}
.ct-detalle details[open] summary::after{content:"\2212"}
.ct-detalle summary .ct-tu{display:block;font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:12px;color:#666;margin-top:4px;letter-spacing:.02em}
.ct-escala{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:0 16px 6px}
.ct-escala>div{background:var(--crema);border-radius:10px;min-height:58px;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:4px}
.ct-escala>div.ct-yo{background:var(--ama)}
.ct-escala>div span{font-family:"IBM Plex Mono",monospace;font-size:10px;color:#555;text-align:center;line-height:1.1}
.ct-escala .ct-ps{display:flex;flex-wrap:wrap;gap:3px;justify-content:center}
.ct-pruebas{list-style:none;margin:6px 0 0;padding:0 16px 14px}
.ct-pruebas li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;padding:9px 0;border-top:1px solid #efefef;font-size:14px;line-height:1.4;margin:0}
.ct-pruebas li b{font-weight:800}
.ct-pruebas a{font-family:"IBM Plex Mono",monospace;font-size:12px;word-break:break-word}
.ct-postura{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:700;border-radius:5px;padding:1px 6px;margin-left:4px;vertical-align:1px}
.ct-v2{background:#0B7A3B;color:#fff}.ct-v1{background:#CDE8D6;color:#0B4F27}.ct-v0{background:#ECEAE6;color:#333}.ct-vm1{background:#F6D3D3;color:#7A1B1B}.ct-vm2{background:#C62828;color:#fff}

/* Reto, método y pie */
.ct-retocaja{background:var(--ama);border-radius:18px;padding:clamp(18px,3.5vw,30px)}
.ct-retocaja h2{margin-top:0}
.ct-copiar{display:flex;gap:8px;margin-top:10px}
.ct-copiar input{flex:1;min-width:0;font-family:"IBM Plex Mono",monospace;font-size:13px;border:2px solid var(--tinta);border-radius:10px;padding:10px;background:#fff;color:var(--tinta)}
.ct-coinc{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.ct-coinc b.ct-big{font-family:"IBM Plex Mono",monospace;font-size:clamp(46px,8vw,80px);line-height:1;letter-spacing:-.04em}
.ct-metodo{background:var(--crema);border-radius:18px;padding:clamp(18px,3.5vw,30px)}
.ct-metodo ul{margin:0;padding:0;list-style:none}
.ct-metodo li{position:relative;padding-left:22px;margin:0 0 10px;font-family:Newsreader,Georgia,serif;font-size:17px;line-height:1.5;color:#2b2b2b}
.ct-metodo li::before{content:"";position:absolute;left:2px;top:.6em;width:9px;height:9px;border-radius:2px;background:var(--ama);box-shadow:0 0 0 1px #111}
.ct-otra{margin-top:28px;display:flex;flex-wrap:wrap;gap:10px}
@media (prefers-reduced-motion:reduce){.ctest *{animation:none!important;transition:none!important}}

/* Móvil: la barra de progreso no es fija (tapaba el enunciado bajo el menú del tema) */
@media(max-width:700px){.ctest .ct-barra{position:relative;top:auto}}
/* El tema pinta todos los <button> en negro al pasar o tocar: en el test cada botón conserva su aspecto (en móvil el «hover» se queda pegado) */
.ctest .ct-op:hover,.ctest .ct-op:focus,.ctest .ct-op:active{background:#fff;color:#111}
.ctest .ct-op[aria-pressed="true"],.ctest .ct-op[aria-pressed="true"]:hover,.ctest .ct-op[aria-pressed="true"]:focus{background:#111;color:#fff}
.ctest .ct-pred-op:hover,.ctest .ct-pred-op:focus,.ctest .ct-pred-op:active{background:#fff;color:#111}
.ctest .ct-modo:hover,.ctest .ct-modo:focus{background:#fff;color:#111}
.ctest .ct-modo[aria-pressed="true"],.ctest .ct-modo[aria-pressed="true"]:hover,.ctest .ct-modo[aria-pressed="true"]:focus{background:#111;color:#fff}
.ctest .ct-importa:hover,.ctest .ct-importa:focus{background:transparent;color:#111}
.ctest .ct-importa[aria-pressed="true"],.ctest .ct-importa[aria-pressed="true"]:hover{background:#FFE14D;color:#111}
.ctest .ct-saltar:hover,.ctest .ct-saltar:focus,.ctest .ct-volver:hover,.ctest .ct-volver:focus,.ctest .ct-contexto:hover,.ctest .ct-contexto:focus,.ctest .ct-ver-todos:hover,.ctest .ct-ver-todos:focus{background:transparent;color:#111}
.ctest .ct-ejes button:hover,.ctest .ct-filtro-partidos button:hover{background:#fff;color:#111}
.ctest .ct-ejes button[aria-pressed="true"]{background:#111;color:#fff}
.ctest .ct-filtro-partidos button[aria-pressed="true"]{background:#FFE14D;color:#111}
@media(hover:hover){.ctest .ct-op:hover,.ctest .ct-pred-op:hover{border-color:#111}}
.ctest .ct-op:focus-visible,.ctest .ct-pred-op:focus-visible,.ctest button:focus-visible{outline:3px solid #111;outline-offset:2px}
