:root{--fondo:#ffffff;--texto:#1a1a1a;--suave:#555;--acento:#0f5c4d;--acento-texto:#fff;--borde:#d6d6d6;--bueno:#e7f4ee;--malo:#fbeceb;--aviso:#fff6db}
@media (prefers-color-scheme:dark){:root{--fondo:#151816;--texto:#eceeed;--suave:#a9b0ac;--acento:#4fbf9f;--acento-texto:#0c1210;--borde:#38403b;--bueno:#17322a;--malo:#3a1f1d;--aviso:#3a3317}}
*{box-sizing:border-box}
body{margin:0;font:18px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--fondo);color:var(--texto)}
main{max-width:46rem;margin:0 auto;padding:1rem}
a{color:var(--acento)}
.cabecera{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--borde)}
.cabecera nav{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}
.marca{font-weight:700;font-size:1.2rem;text-decoration:none;color:var(--texto)}
h1{font-size:1.8rem;line-height:1.2}
.grande{font-size:1.2rem}
.nota{color:var(--suave);font-size:.95rem}
.rotulo{display:inline-block;background:var(--aviso);padding:.25rem .6rem;border-radius:.4rem;font-size:.95rem}
.boton{display:inline-block;background:var(--acento);color:var(--acento-texto);border:0;border-radius:.6rem;padding:.7rem 1.1rem;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}
.boton-grande{font-size:1.2rem;padding:1rem 1.4rem;width:100%;text-align:center;margin:.5rem 0}
.boton-secundario{background:transparent;color:var(--texto);border:1px solid var(--borde)}
.enlace{background:none;border:0;color:var(--acento);font:inherit;cursor:pointer;padding:0}
.en-linea{display:inline}
.formulario p{display:flex;flex-direction:column;gap:.3rem;margin:0 0 1rem}
.formulario input:not([type=radio]):not([type=checkbox]),.formulario select,.formulario textarea{font:inherit;padding:.65rem;border:1px solid var(--borde);border-radius:.5rem;background:var(--fondo);color:var(--texto);width:100%}
.formulario ul{list-style:none;padding:0;margin:0}
.formulario li label{display:flex;gap:.6rem;align-items:center;padding:.5rem 0}
.formulario input[type=radio],.formulario input[type=checkbox]{width:1.4rem;height:1.4rem}
.helptext{color:var(--suave);font-size:.9rem}
.errorlist{color:#b3261e;margin:0;padding:0;list-style:none}
.tarjetas{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin:1.5rem 0}
.tarjeta{display:block;border:1px solid var(--borde);border-radius:.8rem;padding:1rem;text-decoration:none;color:var(--texto)}
.resultado{border-radius:.8rem;padding:1rem;margin:1rem 0}
.resultado.bueno{background:var(--bueno)}.resultado.malo{background:var(--malo)}
.cifra{font-size:3rem;font-weight:800;margin:0}
.aviso{background:var(--aviso);padding:.75rem;border-radius:.5rem}
.afiliado{border:1px solid var(--borde);border-radius:.8rem;padding:1rem;margin:1rem 0}
.afiliado h2{margin:.2rem 0}
.estrellas{color:#b8860b;font-weight:700}
.tabla{width:100%;border-collapse:collapse;font-size:.95rem;display:block;overflow-x:auto}
.tabla th,.tabla td{border-bottom:1px solid var(--borde);padding:.45rem;text-align:left;white-space:nowrap}
.pestanas{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}
.pestanas a[aria-current]{font-weight:700;text-decoration:none}
.ficha dt{font-weight:600;margin-top:.5rem}.ficha dd{margin:0}
.pie{border-top:1px solid var(--borde);padding:1rem;font-size:.9rem;color:var(--suave);max-width:46rem;margin:2rem auto 0}
