:root{--a:#FEDA02;--p:#1A2757;--m:#E0378A;--c:#149AD7;--bg:#f4f6fc;--ln:#dfe3f1}
*{box-sizing:border-box}body{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--p);line-height:1.5}
.top{background:var(--p);color:#fff;padding:14px 16px;text-align:center;font-weight:800;letter-spacing:.04em}.top a{color:#fff;text-decoration:none}.top small{display:block;font-weight:400;opacity:.8;letter-spacing:0}
.wrap{max-width:600px;margin:0 auto;padding:20px 16px 70px}h1{font-size:1.45rem;margin:6px 0 14px}h2{font-size:1.05rem;margin:26px 0 10px}
label{display:block;margin:10px 0 3px;font-weight:600;font-size:.88rem}input,select{width:100%;padding:12px;border:1px solid #b9c0d8;border-radius:10px;font-size:1rem;background:#fff}input:focus,select:focus{outline:2px solid var(--c);border-color:var(--c)}
.card{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:14px;margin-bottom:10px}.opt{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.opt input{width:auto;margin-top:6px}.opt.off{opacity:.55;cursor:not-allowed}
.opt:has(input:checked){border-color:var(--p);box-shadow:0 0 0 2px var(--p)}small,.mut{color:#5a6388;font-size:.85rem}.tag{display:inline-block;background:var(--a);color:var(--p);font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:20px;margin-left:6px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:480px){.row{grid-template-columns:1fr}}
.sum div{display:flex;justify-content:space-between;padding:5px 0}.sum .t{border-top:2px solid var(--p);margin-top:6px;padding-top:10px;font-weight:800;font-size:1.15rem}
.btn{display:block;width:100%;margin-top:16px;background:var(--a);color:var(--p);border:0;padding:15px;border-radius:50px;font-weight:800;font-size:1.05rem;cursor:pointer;text-align:center;text-decoration:none}.btn.alt{background:#fff;border:2px solid var(--p)}.btn.wa{background:#25D366;color:#fff}
.err{background:#ffe3ee;color:#8a0f45;padding:12px;border-radius:10px;margin:10px 0}.ok{background:#e6f7ec;color:#14532d;padding:12px;border-radius:10px}.warn{background:#fff6d6;border:1px solid #f0d36a;padding:12px;border-radius:10px;font-size:.9rem}
.qr{text-align:center}.qr img{width:min(280px,80vw);height:auto;image-rendering:pixelated;border:8px solid #fff;border-radius:12px;box-shadow:0 2px 10px rgba(26,39,87,.15)}.llave{font-size:1.5rem;font-weight:800;letter-spacing:.06em}
.monto{font-size:2rem;font-weight:800;color:var(--m)}ol{padding-left:20px}li{margin:6px 0}#fz{display:none}
