/* Estilo provisional y neutro: se reemplaza con la guía visual del proyecto de referencia. */
:root{--fondo:#f5f6f8;--tarjeta:#fff;--texto:#1d2330;--tenue:#6b7280;--borde:#e3e6eb;--primario:#1f4e8c;--primario-t:#fff;
  --ok:#0f7b4a;--ok-f:#e7f6ee;--error:#b42318;--error-f:#fdecea;--radio:8px}
*{box-sizing:border-box}
body{margin:0;font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--fondo);color:var(--texto)}
a{color:var(--primario)}
h1{font-size:1.5rem;margin:.2rem 0 1rem}h2{font-size:1.1rem;margin:0 0 .8rem}
.barra{display:flex;align-items:center;gap:1.5rem;padding:.7rem 1.5rem;background:var(--primario);color:var(--primario-t);flex-wrap:wrap}
.barra a{color:inherit;text-decoration:none}.barra nav{display:flex;gap:1rem;flex:1}.marca{font-weight:700}
.cuenta{display:flex;gap:.8rem;align-items:center}.cuenta form{margin:0}.barra .enlace{color:inherit}
.contenido{max-width:1100px;margin:0 auto;padding:1.5rem 16px}
.tarjeta{background:var(--tarjeta);border:1px solid var(--borde);border-radius:var(--radio);padding:1.2rem 1.4rem;margin-bottom:1.2rem}
.angosta{max-width:480px}.login{max-width:380px;margin:12vh auto}
label{display:block;margin-bottom:.9rem}label>input,label>select,label>textarea{display:block;width:100%;margin-top:.25rem}
input,select,textarea{font:inherit;padding:.5rem .6rem;border:1px solid var(--borde);border-radius:6px;background:#fff;color:inherit}
input[type=checkbox],input[type=radio]{width:auto;display:inline-block;margin-right:.4rem}
button{font:inherit;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--borde);background:#fff;cursor:pointer}
button.primario{background:var(--primario);color:var(--primario-t);border-color:var(--primario)}
button.enlace{border:0;background:none;padding:0;color:var(--primario);text-decoration:underline}
.en-linea{display:flex;gap:.5rem}.en-linea input{flex:1}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid var(--borde);vertical-align:top}
th{font-size:.82rem;color:var(--tenue);font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums}
.tenue{color:var(--tenue)}small{display:block}
.alerta{padding:.6rem .8rem;border-radius:6px;background:#eef2f7}.alerta.ok{background:var(--ok-f);color:var(--ok)}
.alerta.error{background:var(--error-f);color:var(--error)}
.error-campo{color:var(--error)}.con-error input,.con-error select,.con-error textarea{border-color:var(--error)}
.datos{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1.2rem;margin:0}.datos dt{color:var(--tenue)}.datos dd{margin:0}
.totales dd{font-weight:600}
.encabezado{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}
.acciones{display:flex;justify-content:flex-end;gap:.5rem;margin-bottom:1.2rem}
.opcion{display:flex;align-items:center}
.estado{font-size:.75rem;padding:.1rem .5rem;border-radius:99px;background:#eef2f7;vertical-align:middle;white-space:nowrap}
.estado.firmada,.estado.enviada{background:var(--ok-f);color:var(--ok)}.estado.rechazada,.estado.anulada{background:var(--error-f);color:var(--error)}
@media (max-width:640px){.datos{grid-template-columns:1fr}.datos dd{margin-bottom:.4rem}}
a.boton{display:inline-block;padding:.5rem 1rem;border:1px solid var(--borde);border-radius:6px;background:#fff;text-decoration:none;color:inherit}
tr.resaltado{background:#fff8e1}
