/* Ajustes sobre Pico.css */
:root { --pico-font-size: 95%; }
.banner { text-align: center; font-weight: 700; padding: .45rem 1rem; letter-spacing: .03em; }
.banner-homo { background: #ffd43b; color: #3b2f00; }
.banner-prod { background: #c92a2a; color: #fff; }
.banner-neutro { background: #e9ecef; color: #495057; font-weight: 500; }
.barra { border-bottom: 1px solid var(--pico-muted-border-color); margin-bottom: 1rem; }
.marca { text-decoration: none; }
.pie { color: var(--pico-muted-color); margin-top: 2rem; }
.aviso { padding: .8rem 1rem; margin-bottom: 1rem; border-left: 5px solid; }
.aviso.ok { border-color: #2f9e44; background: #ebfbee; color: #1b5e20; }
.aviso.error { border-color: #c92a2a; background: #fff5f5; color: #861b1b; }
.aviso.info { border-color: #1971c2; background: #e7f5ff; color: #0b3d6b; }
.texto-error { color: #c92a2a; }
.tenue { color: var(--pico-muted-color); }
.num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.chip { display: inline-block; padding: .1rem .55rem; border-radius: 1rem; font-size: .8rem; font-weight: 600; white-space: nowrap; }
.chip.listo, .chip.emitida, .chip.emitido { background: #d3f9d8; color: #1b5e20; }
.chip.bloqueado, .chip.con_errores, .chip.error, .chip.anulada, .chip.rechazado { background: #ffe3e3; color: #861b1b; }
.chip.plan_generado, .chip.pendiente, .chip.borrador { background: #e9ecef; color: #343a40; }
.chip.aprobada { background: #d0ebff; color: #0b3d6b; }
.chip.emitiendo { background: #fff3bf; color: #5c4400; }
.chip.homo { background: #ffd43b; color: #3b2f00; }
.chip.prod { background: #c92a2a; color: #fff; }
.acciones { display: flex; flex-wrap: wrap; gap: .6rem; align-items: flex-start; margin: 1rem 0; }
.acciones form { margin: 0; }
.acciones button, .acciones [role=button] { margin: 0; }
form.en-linea { display: inline; margin: 0; }
button.link { background: none; border: none; color: var(--pico-primary); padding: 0; margin: 0; width: auto; cursor: pointer; }
table td, table th { vertical-align: middle; }
tfoot td { font-weight: 700; }
.grilla-datos { display: grid; grid-template-columns: max-content 1fr; gap: .25rem 1.5rem; }
.grilla-datos dt { color: var(--pico-muted-color); }
.grilla-datos dd { margin: 0; }
.control-ok { color: #2f9e44; font-weight: 700; }
.control-mal { color: #c92a2a; font-weight: 700; }
.password-temporal { font-family: monospace; font-size: 1.4rem; padding: .6rem 1rem; background: #fff3bf; display: inline-block; letter-spacing: .05em; }
.detalle-json { font-family: monospace; font-size: .75rem; max-width: 40rem; white-space: pre-wrap; word-break: break-word; }
.login { max-width: 26rem; margin: 3rem auto; }
.filtros { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 1rem; align-items: end; }
.filtros button { margin-bottom: var(--pico-spacing); }
progress { height: 1rem; }
.sin-corte { white-space: nowrap; }
form.fila-form { display: flex; gap: .5rem; margin: 0; min-width: 22rem; }
form.fila-form input[type=text] { margin: 0; flex: 1; }
form.fila-form button { margin: 0; width: auto; white-space: nowrap; }
