*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#0f172a;color:#e5e7eb}.container{max-width:1150px;margin:auto;padding:28px 18px}.card{background:#1e293b;border:1px solid #334155;border-radius:18px;padding:22px;margin:14px 0;box-shadow:0 10px 28px rgba(0,0,0,.18)}h1,h2,h3{margin-top:0}.muted{color:#94a3b8}.btn{display:inline-block;padding:10px 14px;border-radius:10px;text-decoration:none;border:0;cursor:pointer;font-weight:700;color:white;background:#2563eb}.btn.green{background:#16a34a}.btn.red{background:#dc2626}.btn.gray{background:#475569}.btn.orange{background:#f59e0b;color:#111827}.btn.purple{background:#7c3aed}input,select,textarea{width:100%;padding:11px;border-radius:10px;background:#0f172a;border:1px solid #475569;color:white;margin:6px 0 14px}label{color:#bfdbfe;font-size:14px}table{width:100%;border-collapse:collapse;margin-top:10px}th,td{border-bottom:1px solid #334155;padding:10px;text-align:left;vertical-align:top}th{color:#93c5fd}.nav{background:#111827;border-bottom:1px solid #334155;padding:14px}.nav a{color:#dbeafe;text-decoration:none;margin-right:15px;font-weight:700}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.alert{padding:12px;border-radius:12px;margin:12px 0}.alert.ok{background:#14532d}.alert.err{background:#7f1d1d}.pill{padding:4px 9px;border-radius:999px;font-size:12px;font-weight:700}.online{background:#14532d;color:#bbf7d0}.offline{background:#7f1d1d;color:#fecaca}.mant{background:#78350f;color:#fde68a}.code{font-family:Consolas,monospace;background:#0b1220;padding:8px;border-radius:8px;display:block;overflow:auto}.login{max-width:430px;margin:60px auto}.center{text-align:center}
.estado-pendiente{background:#78350f;color:#fde68a}.estado-aprobado{background:#14532d;color:#bbf7d0}.estado-rechazado{background:#7f1d1d;color:#fecaca}.estado-anulado{background:#334155;color:#e5e7eb}.recibo{background:#fff;color:#111827}.recibo .muted{color:#475569}.recibo table th{color:#111827}.inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;align-items:end}@media print{body{background:white;color:#111827}.nav,.no-print{display:none}.card{box-shadow:none}}
