:root{--azul:#002B38;--azul2:#03404f;--amarillo:#FFD400;--verde:#2BB673;--blanco:#fff;--gris:#c9d6da;--rojo:#ff5a5a;--borde:rgba(255,255,255,.18)}
*{box-sizing:border-box}
html,body{margin:0;background:var(--azul);color:var(--blanco);font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px}
a{color:var(--amarillo)}
.wrap{max-width:720px;margin:0 auto;padding:16px}
.logo{display:block;width:120px;margin:12px auto 8px}
h1{font-size:1.35rem;margin:.4rem 0 1rem;text-align:center}
.card{background:var(--azul2);border:1px solid var(--borde);border-radius:14px;padding:16px;margin-bottom:14px}
label{display:block;font-weight:600;font-size:.92rem;margin:12px 0 6px}
input,select,textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--borde);background:#fff;color:#0b1f26;font-size:1rem}
input[type=checkbox]{width:auto;transform:scale(1.3);margin-right:10px}
.fila{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:560px){.fila{grid-template-columns:1fr}}
.btn{display:inline-block;width:100%;padding:14px;border:0;border-radius:12px;background:var(--amarillo);color:var(--azul);font-weight:800;font-size:1.05rem;cursor:pointer;text-align:center;text-decoration:none}
.btn.sec{background:transparent;color:var(--blanco);border:1px solid var(--borde);font-weight:600}
.btn:disabled{opacity:.5}
.btn-mini{padding:6px 10px;border-radius:8px;border:1px solid var(--borde);background:transparent;color:#fff;cursor:pointer;font-size:.85rem}
.req{color:var(--amarillo)}
.nota{font-size:.82rem;color:var(--gris)}
.msg{padding:12px;border-radius:10px;margin:10px 0;font-weight:600}
.msg.ok{background:rgba(43,182,115,.2);border:1px solid var(--verde)}
.msg.err{background:rgba(255,90,90,.15);border:1px solid var(--rojo)}
.menu{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;padding:10px 12px;background:#001d26;border-bottom:1px solid var(--borde)}
.menu a{color:#fff;text-decoration:none;padding:7px 12px;border-radius:8px;font-size:.92rem}
.menu a.on{background:var(--amarillo);color:var(--azul);font-weight:700}
.menu .quien{width:100%;text-align:center;font-size:.8rem;color:var(--gris)}
.foto-box{display:flex;gap:10px;flex-wrap:wrap}
.foto-box .btn{flex:1;min-width:140px}
#preview{display:none;margin-top:10px;max-width:100%;max-height:280px;border-radius:12px;border:2px solid var(--amarillo)}
.autoriza{display:flex;align-items:flex-start;font-size:.85rem;line-height:1.35;font-weight:400}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th,td{padding:8px;border-bottom:1px solid var(--borde);text-align:left}
.pill{display:inline-block;padding:2px 8px;border-radius:99px;font-size:.75rem;background:rgba(255,255,255,.12)}
.contador{font-size:2rem;font-weight:800;color:var(--amarillo)}
