:root{--negro:#121212;--panel:#1B1B1B;--linea:#2C2C2C;--texto:#F4F4F4;--suave:#A7A7A7;--rojo:#D31D20;--verde:#2FBF71}
*{box-sizing:border-box}body{margin:0;background:var(--negro);color:var(--texto);font:400 16px/1.5 Lexend,system-ui,sans-serif}
.prueba-banner{position:sticky;top:0;z-index:99;background:#F7841A;color:#000;font-weight:800;text-align:center;padding:6px;font-size:.78rem}
main{width:min(520px,100%);margin:0 auto;padding:16px}
.caja{background:var(--panel);border:1px solid var(--linea);border-radius:28px;padding:22px 18px;display:flex;flex-direction:column;gap:14px}
.hal{border-radius:22px;padding:18px 16px;display:flex;flex-direction:column;gap:10px;text-align:center;background:linear-gradient(160deg,rgba(247,132,26,.22),rgba(124,58,237,.22));border:1.5px solid rgba(247,132,26,.55)}
.hal h3{margin:0;font-size:1.05rem;font-weight:800;color:#FFB45E}.hal p{margin:0;font-size:.9rem}
.mc-logo{width:96px;margin:0 auto;display:block}
.mc-nov{background:rgba(0,0,0,.35);border-radius:14px;padding:10px 12px;font-size:.85rem}.mc-nov b{color:#FFB45E}
label{font-size:.85rem;color:var(--suave);display:block;margin-bottom:4px}
input{width:100%;background:#232323;border:1.5px solid var(--linea);color:var(--texto);border-radius:14px;padding:12px;font:inherit}
.btn{width:100%;background:var(--rojo);color:#fff;border:0;border-radius:999px;padding:14px;font:700 1rem Lexend,system-ui;cursor:pointer}
.btn.sec{background:transparent;border:1.5px solid var(--linea)}
.opc{display:block;border:1.5px solid var(--linea);border-radius:18px;padding:14px;cursor:pointer;text-align:left;background:#232323;color:var(--texto);width:100%;font:inherit}
.opc.on{border-color:#F7841A;background:rgba(247,132,26,.15)}.opc b{display:block}
.ok{color:var(--verde);font-weight:800}.error{color:#ff6b6b;font-size:.9rem}
.codigo{font-size:1.6rem;font-weight:800;letter-spacing:.1em;color:#FFB45E}
#qr{background:#fff;border-radius:16px;padding:12px;width:220px;margin:0 auto}#qr img,#qr canvas{width:100%;height:auto;display:block}
.nota{font-size:.8rem;color:var(--suave)}
