*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#eef1f5;color:#1d2733}
main{max-width:520px;margin:0 auto;padding:14px}
header{display:flex;justify-content:space-between;align-items:center}
h1{font-size:1.5rem;margin:6px 0}
h2{font-size:1.05rem;margin:0 0 8px}
h2 small{font-weight:normal;color:#5b6775}
.sub{margin:0 0 12px;color:#5b6775;font-size:.9rem}
.caja{background:#fff;border-radius:12px;padding:14px;margin:0 0 12px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
label{display:block;font-size:.9rem;color:#46515e;margin-bottom:10px}
input[type=password],input[type=date],input[type=time],input[inputmode]{display:block;width:100%;font-size:1.2rem;padding:10px;margin-top:4px;border:1px solid #c5cdd6;border-radius:8px;background:#fff}
.fila{display:flex;gap:10px}.fila label{flex:1}
.tipos{display:flex;gap:10px;margin-bottom:12px}
.tipo{flex:1;margin:0}.tipo input{position:absolute;opacity:0}
.tipo span{display:block;text-align:center;padding:14px 0;border:2px solid #c5cdd6;border-radius:10px;font-weight:700;font-size:1.1rem;color:#46515e}
.tipo input:checked+span{border-color:#1565c0;background:#1565c0;color:#fff}
button.grande{width:100%;font-size:1.5rem;font-weight:700;padding:18px;border:0;border-radius:12px;background:#2e7d32;color:#fff}
button.grande:disabled{background:#8aa58c}
button.secundario{background:#b26a00;font-size:1.15rem;padding:12px;margin-top:8px}
button.link{background:none;border:0;color:#1565c0;font-size:1rem;text-decoration:underline}
table{width:100%;border-collapse:collapse;font-size:.95rem}
th,td{text-align:left;padding:5px 4px;border-bottom:1px solid #eef1f5}
th{color:#5b6775;font-weight:600;font-size:.8rem}
table.verif td,table.verif th{font-size:.8rem;font-family:ui-monospace,Consolas,monospace}
.chico,.chico td,.chico th{font-size:.78rem}
.vacio{color:#8a949f;text-align:center}
.neg{color:#c62828}.pos{color:#2e7d32}
.neto{margin:8px 0 0}
.aviso{color:#b26a00;font-weight:600}
.alerta{background:#fff4e5;border-left:4px solid #b26a00}
p.alerta{padding:10px;border-radius:8px}
.ok{border-left:4px solid #2e7d32}
ul{margin:0;padding-left:20px}
