:root{
  --bg:#EBF3FF; --primary:#0068FF; --navy:#171729;
  --line:#dbe6fb; --muted:#667085; --white:#fff;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
     background:var(--bg);color:var(--navy);line-height:1.45}
.topbar{display:flex;justify-content:space-between;align-items:center;
        background:var(--white);padding:14px 24px;border-bottom:1px solid var(--line)}
.brand{font-weight:700;color:var(--primary);text-decoration:none;font-size:18px}
.topnav a{color:var(--primary);text-decoration:none}
.container{max-width:960px;margin:28px auto;padding:0 20px}
h1{font-size:24px;margin:0 0 4px}
h2{font-size:14px;color:var(--primary);margin:18px 0 2px;text-transform:uppercase;letter-spacing:.5px}
.muted{color:var(--muted);font-size:13px}
.card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:26px}
.card.center{text-align:center}
.big-check{font-size:52px}

/* formularios */
.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-top:16px}
.field{display:flex;flex-direction:column}
.field.wide{grid-column:1 / -1}
.field.checkbox{flex-direction:row;align-items:center}
label{font-size:12px;font-weight:600;margin-bottom:5px;color:var(--navy)}
input,select,textarea{padding:10px 12px;border:1px solid var(--line);border-radius:9px;
      font-size:14px;background:var(--white);font-family:inherit}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);
      box-shadow:0 0 0 3px rgba(0,104,255,.12)}
.actions{display:flex;gap:12px;align-items:center;margin-top:8px}

/* botones */
.btn{display:inline-block;padding:10px 18px;border-radius:9px;border:1px solid var(--line);
     background:var(--white);color:var(--navy);text-decoration:none;font-size:14px;cursor:pointer}
.btn.primary{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}
.btn.small{padding:6px 12px;font-size:13px}
.btn.send{background:#12b76a;color:#fff;border-color:#12b76a;font-weight:600}

/* tabla */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.tab{padding:7px 14px;border-radius:999px;background:var(--white);border:1px solid var(--line);
     color:var(--navy);text-decoration:none;font-size:13px}
.tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.badge{background:rgba(255,255,255,.35);border-radius:999px;padding:0 7px;font-size:11px}
.table{width:100%;border-collapse:collapse;background:var(--white);border-radius:12px;overflow:hidden;
       border:1px solid var(--line)}
.table th{background:#f4f8ff;text-align:left;padding:11px;font-size:12px;color:var(--muted)}
.table td{padding:11px;border-top:1px solid var(--line);font-size:14px}

/* pills / estados */
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600}
.pill.ok{background:#e6f7ee;color:#12b76a}
.pill.no{background:#fdeceb;color:#e5533c}
.pill.estado-solicitada{background:#eef2ff;color:#4257d6}
.pill.estado-en_revision{background:#fff5e6;color:#b9770a}
.pill.estado-generada{background:#e6f7ee;color:#0a8f4f}
.pill.estado-enviada{background:#e6f0ff;color:var(--primary)}
.pill.estado-anulada{background:#f1f1f4;color:#667085}

.flash{background:#fff7e6;border:1px solid #ffe1a6;color:#7a5900;padding:10px 14px;
       border-radius:10px;margin-bottom:16px}
.detail-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.send-box{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:16px;
          margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:12px}

@media(max-width:640px){.grid{grid-template-columns:1fr}}
