*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f4f6f9;color:#1d2433}
.top{background:#0b3d91;color:#fff;padding:18px 24px}
.top h1{margin:0;font-size:1.4rem}.top p{margin:4px 0 0;opacity:.85}.top a{color:#ffd24d}
.card{max-width:760px;margin:24px auto;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.08)}
label{display:block;font-weight:600;margin:10px 0 6px}
.fila{display:flex;gap:8px}
input{flex:1;width:100%;padding:10px 12px;border:1px solid #c9d1dc;border-radius:8px;font-size:1rem}
button{background:#0b3d91;color:#fff;border:0;padding:10px 18px;border-radius:8px;font-size:1rem;cursor:pointer;margin-top:10px}
.fila button{margin-top:0}
button:hover{background:#082d6b}
.badge{background:#e8f0ff;color:#0b3d91;padding:3px 10px;border-radius:999px;font-weight:600}
.error{color:#b00020}.ok{color:#146c2e;font-weight:600}
table{width:100%;border-collapse:collapse;margin-top:8px}
th,td{text-align:left;padding:8px;border-bottom:1px solid #e3e8ef;font-size:.95rem}
.pasos{display:flex;list-style:none;padding:0;margin:18px 0;gap:6px}
.pasos li{flex:1;text-align:center;font-size:.85rem;color:#8791a3}
.pasos span{display:block;width:34px;height:34px;line-height:34px;margin:0 auto 6px;border-radius:50%;background:#e3e8ef;font-weight:700}
.pasos .hecho span{background:#2e9e5b;color:#fff}.pasos .hecho{color:#2e9e5b}
.pasos .actual span{background:#0b3d91;color:#fff}.pasos .actual{color:#0b3d91;font-weight:700}
@media(max-width:520px){.fila{flex-direction:column}.pasos{font-size:.75rem}}
